CentOS 6にApache HTTP Server 2.4.16をインストールする
mod_proxy_wstunnel.soを使って、WebSocketのリバースプロキシをしたいと思いCentOS 6にApache HTTP Server 2.4.16をインストールすることにしました。
その手順のメモです。
ソースのダウンロード
次のソースをWebサイトから/usr/local/srcにダウンロードします。
Perl Compatible Regular Expressionsのインストール
yumコマンドでpcre-develをインストールします。
# yum install pcre-devel
コンパイルとインストール
tarコマンドでソースを展開します。
# cd /usr/local/src
# tar xvzf apr-1.5.2.tar.gz
# tar xvzf apr-util-1.5.4.tar.gz
# tar xvzf httpd-2.4.16.tar.gz
apr-1.5.2のコンパイルとインストール
# cd /usr/local/src/apr-1.5.2
# ./configure
# make
# make install
apr-util-1.5.4のコンパイルとインストール
# cd /usr/local/src/apr-util-1.5.4
# ./configure --with-apr=/usr/local/apr
# make
# make install
Apache HTTP Server 2.4.16のコンパイルとインストール
# cd /usr/local/src/httpd-2.4.16
# ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
# make
# make install
自動起動の設定
以下のシェルスクリプトを/etc/init.dにコピーします。
# cd /usr/local/src/httpd-2.4.16/build/rpm
# cp httpd.init /etc/init.d/httpd-2.4.16
コピーしたhttpd-2.4.16の60行目、61行目、67行目を次のように編集します。
60: httpd=${HTTPD-/usr/local/apache2/bin/httpd}
61: pidfile=${PIDFILE-/usr/local/apache2/logs/httpd.pid}
67: CONFFILE=/usr/local/apache2/conf/httpd.conf
# chkconfig --add httpd-2.4.16
# chkconfig httpd-2.4.16 on
# service httpd-2.4.16 start
PROXYモジュールの有効化
/usr/local/apache2/conf/httpd.confの次のモジュールをロードするようにコメントをはずしています。
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
リバースプロキシの設定
例
* リバースプロキシ(WebSocket): ws://www.example.com/test/sample
* リバースプロキシ(HTTP): http://www.example.com/test
* Webサーバ(WebSocket): ws://localhost:8080/sample
* Webサーバ(HTTP): http://localhost:8080/
/usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/web"
ServerName www.example.com
ServerAdmin [email protected]
ErrorLog "logs/www.example.com-error_log"
CustomLog "logs/www.example.com-access_log" common
ProxyPreserveHost On
ProxyPass /test/sample ws://localhost:8080/sample
ProxyPassReverse /test/sample ws://localhost:8080/sample
ProxyPass /test http://localhost:8080
ProxyPassReverse /test http://localhost:8080
</VirtualHost>
2.2系とのアクセス許可の違い
2.2系では次のように書いていた部分、
Order allow,deny
Allow from all
2.4系では次のようになります、
Require all granted
Author And Source
この問題について(CentOS 6にApache HTTP Server 2.4.16をインストールする), 我々は、より多くの情報をここで見つけました https://qiita.com/s_edward/items/e2f8280650dc60415d31著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .