Nginx と Apache を使用して同じサーバー上に複数の仮想ホストをセットアップしようとしていますが、興味深い構成の問題が発生しました。
nginx は、Apache への一般的なアップストリームで構成されています。
upstream backend {
server 1.1.1.1:8080;
}
Apache で異なるマウントポイントにヒットする nginx で複数のサブドメインを設定しようとしています。それぞれが次の例のように動作します。
server {
listen 80;
server_name foo.yoursite.com;
location / {
proxy_pass http://backend/bar/;
include /etc/nginx/proxy.conf;
}
...
}
server {
listen 80;
server_name delta.yoursite.com;
location / {
proxy_pass http://backend/gamma/;
include /etc/nginx/proxy.conf;
}
...
}
これらのマウントポイントは django プロジェクトを指していますが、各 URL エントリは先頭に apache マウントポイント パスが追加されて戻ってきます。したがって、foo.yoursite.com/wiki/biz/ の django url エントリを呼び出すと、django は foo.yoursite.com/bar/wiki/biz/ を返しているように見えます。同様に、delta.yoursite.com/wiki/biz/ の URL エントリを呼び出すと、delta.yoursite.com/gamma/wiki/biz/ が取得されます。
django と apache によって URL エントリに返されるプレフィックスを取り除く方法はありますか?