#author("2018-09-03T09:58:55+09:00","","")

#author("2018-09-03T09:59:04+09:00","","")

[[CentOS7]]

*Apache httpd : mod_proxy_wstunnel を利用する [#hc9e47ba]
  	



mod_proxy_wstunnel モジュールを有効にして、バックエンドの WebSocket プロトコルを利用するアプリケーションをプロキシします。

例として、ローカルホストのポート 1337 で起動しているサンプルアプリケーションを、ポート 80 で待ち受ける httpd が /chat でプロキシする設定です。[[サンプルアプリケーションはこちらのの簡易チャット>Node.js インストール]]を利用します。



|BGCOLOR(black):COLOR(white):|c
|[root@localhost ~]# vi /etc/httpd/conf.modules.d/00-proxy.conf|
|&color(lightpink){# 最終行に追記};|
|LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so|
|[root@localhost ~]# vi /etc/httpd/conf.d/wstunnel.conf|
|&color(lightpink){# 新規作成};|
|ProxyRequests Off &br; <Proxy *> &br;     Require all granted &br; </Proxy> &br;  &br; ProxyPass /socket.io/ http://127.0.0.1:1337/socket.io/ &br; ProxyPassReverse /socket.io/ http://127.0.0.1:1337/socket.io/ &br;  &br; ProxyPass /chat http://127.0.0.1:1337/ &br; ProxyPassReverse /chat http://127.0.0.1:1337/|
|[root@localhost ~]# systemctl restart httpd|




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

|BGCOLOR(black):COLOR(white):|c
|[root@localhost ~]# semanage port -a -t http_port_t -p tcp 1337|



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

&ref(01.png);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS