CentOS7

Nginx : リバースプロキシの設定#2

Nginx での WebSocket を通すリバースプロキシの設定です。

例として、バックエンドのポート 1337 で起動しているサンプルアプリケーションを、ポート 80 で待ち受ける Nginx が /chat でプロキシする設定です。 サンプルアプリケーションはこちらの [3] の簡易チャットを利用します。

[root@localhost ~]# vi /etc/nginx/nginx.conf
# server セクション内を以下のように変更

server {

listen 80 default_server;
listen [::]:80 default_server;
server_name www.hoge.com;

location /socket.io/ {
proxy_pass http://node01.hoge.com:1337/socket.io/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

location /chat {
proxy_pass http://node01.hoge.com:1337/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

location / {
proxy_pass http://node01.hoge.com/;
}

}
[root@localhost ~]# systemctl restart nginx

SELinux を有効にしている場合は、アプリケーション起動ポートへのアクセス許可が必要です。

[root@localhost ~]# semanage port -a -t http_port_t -p tcp 1337

設定をした /chat へアクセスして、アプリケーションが問題なく利用できるか確認してください。

01.png


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS