nginx を apache のプロキシ リバースとして構成する運がなかったので、ほぼ 1 日試してみました。nginx がすべての静的ファイルを提供し、残りが apache に渡されることを期待しています。
サイトがルート ドメイン名にある場合、これを達成するのは難しくありません。
たとえば、次のように設定しました:
www.mydomain.com
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|rss|txt)$ {
root /path/to/mysite;
}
location / {
proxy_pass 127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
たとえば、www.mydomain.com/site1 などのエイリアス内でサイトを構成したいので、問題が発生します。
同じ目的を達成する方法を知っている人はいますか?
以下の構成を試しましたが機能しません:
location /site1 {
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|rss|txt)$ {
root /path/to/anothersite1;
}
proxy_pass apache:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
問題は、'root' ディレクティブが /site1 URI を置き換えないことです。たとえば、
www.mydomain.com/site1/folder/pic.jpg
ファイルを開くことによって処理されます。
/path/to/anothersite1/site1/folder/pic.jpg;
それ以外の:
/path/to/anothersite1/folder/pic.jpg
これについて何か助けていただければ幸いです。「ルート」ディレクティブを「エイリアス」に置き換えようとしましたが、まだうまくいきません。
よろしくお願いします。