シナリオ:
最初のnode.jsアプリは127.0.0.1:8888で実行されており、1つのルート'domain.com/track.gif'のみを提供しています
2番目のnode.jsアプリは127.0.0.1:3000で実行されており、最初のアプリによって収集された統計のダッシュボードであり、「domain.com」(および「domain.com/login」や「domain.com」などの他のルート)で利用できます。 / dashboard 'など)
以下のこの設定を使用すると、最初のアプリに対してのみ、最初のアプリはうまく機能し、「domain.com/track.gif」をクリックすると、このトラッキングgifファイルが提供されます。
upstream tracker {
server 127.0.0.1:8888;
}
server {
listen 0.0.0.0:80;
server_name www.domain.com domain.com;
access_log /var/log/nginx/domain_access.log;
error_log /var/log/nginx/domain_error.log;
location /track.gif {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://tracker;
proxy_redirect off;
}
}
この構成に別の(2番目の)node.jsアプリを追加して、「domain.com /」、「domain.com/dashboard」、「domain.com/login」などのルートのルーティング全体を処理するにはどうすればよいですか?
前もって感謝します!
2番目のロケーションブロックを追加します。/track.gif以外のパスに一致します。
upstream tracker {
server 127.0.0.1:8888;
}
server {
listen 0.0.0.0:80;
server_name www.domain.com domain.com;
access_log /var/log/nginx/domain_access.log;
error_log /var/log/nginx/domain_error.log;
location /track.gif {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://tracker;
proxy_redirect off;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加