【发布时间】:2011-11-20 13:37:59
【问题描述】:
我没有经常使用 Apache 和 Django,通常使用 nginx、gunicorn 和 unix 套接字。
在试验 Apache、mod_proxy 和 Django 时,我一直在尝试将所有请求传递到 gunicorn 后端,监听 127.0.0.1:8998。
我已经使用 Rewrite ... [P](见下文)实现了这一点,但是,这对于默认 URL 工作正常,当我转到 http://foo.bar.com/admin 时,我被重定向到 127.0.0.1/admin,它显然不能远程工作。这是可以通过 htaccess 文件实现的设置吗?我需要做什么/查看什么来修复它?
.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) http://localhost:8998/$1 [P]
谢谢!
【问题讨论】:
-
你确定重写是你想要的吗?你不是在尝试反向代理吗?
-
我可能误解了 [P] 的作用,因为我认为这是 mod_rewrite 与代理交谈的方法?另一个问题是,如果没有 root 访问权限,这可能无法实现,但我想如果有我不知道的方法,我会问。
标签: django apache mod-proxy gunicorn