我的 Django 应用程序中有一个中间件,可将移动客户端重定向到用户可配置的移动域。这不是一个简单的m.[当前域]
,因为用户自己定义域。为了保存查询,我可以存储类似于 {'www.example.com': 'mobile-version.example.com'}
的映射。但是,我想避免在移动请求上访问 wsgi 服务器和完整的 Django 堆栈,因为这个简单的逻辑是唯一发生的事情。我的想法是,如果我能以某种方式将这个逻辑放入 Nginx 中,我就能够完全绕过 Django,从而节省一些资源。这可能吗?我读过人们通过 memcached 为整个网站提供服务(似乎是简单 Varnish 使用的更便宜的替代品),但方法似乎有点不同。
逻辑如下:
$mobile_domain = memcached.get_by_key("mobile_domain_for:" + $current_domain)
IF $mobile_domain:
redirect $mobile_domain + $path_info + $query_strings
最佳答案
看起来像第三方memc-nginx-module能够查找特定的 memcached 键。
关于django - Nginx 可以访问 memcached 来检查某个值以确定重定向到哪里吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10268501/