読者です 読者をやめる 読者になる 読者になる

ITの隊長のブログ

ITの隊長のブログです。いや、まだ隊長と呼べるほどには至っていないけど、日々がんばります。CakePHPとPlayFrameworkを使って仕事しています。最近はAngular2をさわりはじめたお(^ω^ = ^ω^)

ApacheのProxyPassの設定

Apache

スポンサードリンク

久々にやったった。


WordPressで実装したサイトでとあるディレクトリは別のURLにrewriteしたかったけど、せっかくだからProxyでやった。

<VirtualHost *:80>
        DocumentRoot /var/www/htdocs
        AllowEncodedSlashes On
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory "/var/www/htdocs">
                Options FollowSymLinks MultiViews ExecCGI
                AllowOverride All
                Order allow,deny
                allow from all

                # ここに追加
                ProxyPass /contact/ http://111.222.222.222:9000/contact/other_system/
                ProxyPassReverse /contact/ http://111.222.222.222:9000/contact/other_system/
        </Directory>
</VirtualHost>


そしたら、こんなエラーが

Syntax error on line 13 of /etc/httpd/conf.d/wp.conf:
ProxyPass|ProxyPassMatch can not have a path when defined in a location.


うむむむ?理由はわからないけど、locationでは書いちゃいけないらしい(ディレクトリとか)


ここに書きなおしたらうまくいったった⊂二二二( ^ω^)二⊃ブーン

<VirtualHost *:80>
        DocumentRoot /var/www/htdocs
        AllowEncodedSlashes On

        # ここに追加
        ProxyPass /contact/ http://111.222.222.222:9000/contact/other_system/
        ProxyPassReverse /contact/ http://111.222.222.222:9000/contact/other_system/

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory "/var/www/htdocs">
                Options FollowSymLinks MultiViews ExecCGI
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>