私の問題の背景を少し説明するには:
ソフトウェアをインストールして公開するアプリがあります。インストール時:
- 基本ファイルをルート パス (つまり
/var/www/{site}
)にインストールします。 - 新しい nginx 構成ファイルを作成し、
/etc/nginx/sites-available/{site}
- からそのファイルへのシンボリックリンクを作成します
/etc/nginx/sites-enabled/{site}
- nginx 構成をリロードします。
service nginx reload
- CloudFlare に API 呼び出しを送信して、すべてのリクエストを
{site}.mydomain.com
サーバーの IP アドレスに送信します
その後、{site}.mydomain.com
動作するはずですが、動作しません!
... 5 分ほど待つと、魔法のように機能し始めます。nginx でプロキシが有効になるまでに遅延はありますか?
削除{site}
して再読み込みすると(上記と同じプロセス)、以前は機能していた場合でも、再び機能し始める前にしばらく機能しなくなります。
私は何が起こっているのか説明するのに途方に暮れています!
nginx 構成 (どこに{site}
あるfoobar
)
upstream mydomain_foobar {
server 127.0.0.1:4567;
}
server {
listen 80;
server_name foobar.mydomain.com;
root /var/www/mydomain/foobar/;
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://mydomain-foobar/;
proxy_redirect off;
# Socket.io Support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}