Apacheのmod_proxy_balancerを使用した2台のAPサーバへの負荷分散について
解決したいこと
「スキーム名://WebサーバのIPアドレス/*.php」と検索したときに、「スキーム名://WebサーバのIPアドレス/ドキュメントルート/*.php」という形でリダイレクトされてしまい、404エラーが帰ってくること
不明なところ
「スキーム名://WebサーバのIPアドレス/ドキュメントルート/*.php」という形でリダイレクトされないようにする設定方法。
現状の設定内容
各ミドルウェアの設定ファイルにおいて、デフォルトから設定を変更したところだけ抜粋しています。
- Webサーバ(Apache)
/etc/httpd/conf/httpd.conf
<Directory "/var/www/html">
<FilesMatch \.php$>
SetHandler "proxy:balancer://php"
</FilesMatch>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
ProxyPass /php balancer://php lbmethod=byrequests timeout=1 maxattempts=2
<Proxy balancer://php>
BalancerMember fcgi://APサーバのIPアドレス loadfactor=1
BalancerMember fcgi://APサーバのIPアドレス loadfactor=1
</Proxy>
/var/log/httpd/access_log
"GET /var/www/html/wp-admin/install.php HTTP/1.1" 404
- APサーバ(php-fpm)
/etc/php-fpm.d/www.conf
listen = 0.0.0.0:8000
listen.allowed_clients = 127.0.0.1,"WebサーバのIPアドレス"
設定意図と試したこと
特定のファイル(具体的には、phpの拡張子がついたファイル)が検索されたときは、2台のAPサーバにリクエストを振り分けたいです。そのためにApacheのドキュメントサイトを参考に設定を行いました。
APサーバでは、Webサーバからのリクエストを待ち受けるための設定を行っています。
宜しくお願い致します。
0