iq29 diary

EG.LAB 開発日記

Node.js でサーバ起動したとき、Nginx を使って URL のポート番号を消す

Node.js でサーバ起動したとき、Nginx を使ってURL のポート番号を消す

リバースプロキシ

結論から書くと最初からポート 80 番を指定して使っておけば、URL:8080 みたいなみっともないポート番号で表示しなくていい。
なんだけども、Node.js でそれをやるとセキュリティ的によくないらしい。なので Nginx で HTTP サーバをポート 80 番で立てておいて、 そこで受け取ったリクエストを Node.js サーバに渡すのがセオリーらしい。 これをリバースプロキシという。

/etc/nginx/nginx.conf

下記を修正する。

server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    # サーバー名を記載
    server_name  randomchord.work;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
        # ポート80 のまま下記の URL にアクセスする
        proxy_pass http://www.randomchord.work:8080/;
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

ランダムコード

今回の仕組みでこんなサービス作ってます。よろしくです。