Webアプリケーションをnginxで負荷分散しようとしています。私のWebアプリケーションがサブパスでサービスを呼び出しても問題ありません。NGINXの応答がありません。上流に接続しています。
例えばそれは
http://example.com/luna/
に動作しますが、
http://example.com/luna/sales
のために私のnginx.conf
user nobody;
worker_processes auto;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream lunaups {
server myhostserver1.com:8080;
server myhostserver2.com:8080;
}
server {
listen 80;
server_name example.com;
proxy_pass_header Server;
location =/{
rewrite^http://example.com/luna redirect;
}
location /luna {
rewrite ^$/luna/(.*)/^ /$1 redirect;
proxy_pass http://lunaups;
#add_header X-Upstream $upstream_addr;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
私のWebアプリケーションが/ルナ/販売などの追加のサブパスを持つサービスを呼び出していません応答を返さない。私はここで何が欠けていますか?
アップストリームから自分のホストサーバーの1つを削除すると動作しますが、アップストリームに2番目のホストを追加すると応答が返されません。
書き換えルールが間違っているか、設定全体が間違っていますか?
'^ $/luna /(.*)/^'とは何ですか?それは偽の '$'と偽の '^'を持っているようです。 –
こんにちはリチャード、私はnginxに新しいです、私は自分自身を構築したドキュメントを見て、ただ試行錯誤をして、可能であれば修正してください。 –
上流から送信する前に、URIから '/ luna'プリフィックスを打ち消すことになっていますか? –