ゴール
アプリケーションごとに異なるサブディレクトリを使用して、nginx で複数の Play 2.1 アプリケーションをセットアップします。
で実行されている App1127.0.0.1:4000
は、以下でアクセスできる必要があります。127.0.0.1/dev
127.0.0.1:5000
127.0.0.1/test
構成
nginx.conf
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
upstream app1 {
server 127.0.0.1:4000;
}
upstream app2 {
server 127.0.0.1:5000;
}
server {
listen 80;
server_name localhost;
location /dev {
rewrite /(.*) /$1 break;
proxy_pass http://app1;
}
location /test {
rewrite /(.*) /$1 break;
proxy_pass http://app2;
}
}
}
App1 - application.conf
application.context=/dev
App2 - application.conf
application.context=/test
問題
この構成では、両方のアプリケーションにアクセスできますが、html コードのみが読み込まれます。すべての静的ファイル (css、js、画像) は読み込まれません。
これはキャッシングの問題だと思います。運が悪かったので、さまざまなnginxパラメーターを試しました。初めてサイトをリクエストした場合、ブラウザは (css
およびjs
ファイルなどに対して127.0.0.1/dev/assets/stylesheets/main.css
) ステータスを返します200
が、コンテンツは返しません - Content-Length: 0
. 次回は で応答しますが304
、まだコンテンツはありません。
これが構成の問題なのnginx
かどうかはわかりません。Play 2.1
どんな助けにも感謝します。