NodeJSとNgixは80ポートを共有しています.

1469 ワード

ApacheとNgixは通常、デフォルトのHTTP要求の80ポートを使用します.しかし、私たちはNgixを開いたら、NodeJSが80ポートを傍受するとエラーが発生することを知っています.じゃ、私たちはどうやってこの問題を解決しますか?
次に、最近発表された個人博駅を例に挙げます.
私のアリ雲サーバーではすでにNgixサービスを開始しています.ドメイン名の下ではすでに対応項目が走っています.この時、私の博駅はNodeJSを採用して作成したので、傍受のポートは8090ポートです.ノードJSが80ポートを傍受することができるようにするために、80ポートを8090ポートに逆プロキシすると、80ポートに送信されたすべての要求は8090にリダイレクトされる.
まず、アリ雲のドメイン名解析にキングスラー.allenzhan.topというサブドメインを配置しました.そして、私のNginnxのvhostにking.com nfファイルを作成して、対応する構成を書き込みます.
次のとおりです
そのうち
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:8090/;
            proxy_set_header X-NginX-Proxy true;
        }
は、キングスリー.allenzhan.topへの要求をNodeJS傍受の8090ポートにリダイレクトするものです.
しかし、ルーティングが成功しましたが、静的なファイルが見つかりませんでした.したがって、以下のパスを設定する必要があります.
 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            root    /application/nginx/html/king/blogs/;
            expires 30d;

        }

 location ~ .*\.(js|css)?$
        {
            root    /application/nginx/html/king/blogs/;
            expires 12h;
        }
/appication/inx/html/king/blogs/この経路はブログプロジェクトを保存する静的な資源の位置です.
設定を書き込み、保存します.コマンドnginx-s reloadを使用して、NFinxを再起動します.このように、キングスリー.allenzhan.topを再訪問すると、私たちはポート8090を入力しなくても、実用的にデフォルトの80ポートで私たちのプロジェクトにアクセスできるようになります.