もくじ
やりたいこと
- http://www.sample.net/userlist/detail/アクセスで、サーバ内部のフレームワークへhttp://app.laravel.local/userlist/detailとしてアクセスをさせる
なぜやりたいのか?
- 一部の処理だけフレームワークで処理を行いたい
http://www.sample.net/のURL, /var/www/vhosts/www.example.net/httpdocs/の公開ディレクトリのプログラムで基本的な処理を行いたい。 - フレームワーク全体を晒したくない
利用するURIからしかフレームワークへアクセスできないようにしたい
今回の記事だと、『/userlist/detail』の部分でしかフレームワークにアクセスさせない
具体的には、
「お問い合わせ、ショッピングカート機能だけをフレームワークで実装したい」など
設定
- サイト公開URL
http://www.example.net/ - サイト公開ディレクトリ
/var/www/vhosts/www.example.net/httpdocs/ - フレームワークのURL
http://app.laravel.local/ - フレームワーク公開ディレクトリ
/var/www/vhosts/www.example.net/app/public
詳細設定
/etc/httpd/conf.d/www.example.net.conf
<VirtualHost *:80>
DocumentRoot /var/www/vhosts/www.example.net/httpdocs/
ServerName www.example.net
ServerAlias example.net
ErrorLog logs/www.example.net-error.log
CustomLog logs/www.example.net-access.log elb-customlog env=!nolog
<Location "/userlist/detail">
ProxyPass http://app.laravel.local/userlist/detail
ProxyPassReverse http://app.laravel.local/userlist/detail
</Location>
<Directory "/var/www/vhosts/www.example.net/httpdocs/">
# 2.2系
#AllowOverride All
#Order allow,deny
#Allow from all
# 2.4系対策
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/vhosts/www.example.net/app/public
ServerName app.laravel.local
ErrorLog logs/app.laravel.local-error.log
CustomLog logs/app.laravel.local-access.log elb-customlog
<Directory "/var/www/vhosts/www.example.net/app/public">
# 2.2系
#AllowOverride All
#Order allow,deny
#Allow from all
# 2.4系対策
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
WEBサービスに反映させる
# httpd -t # systemctl reload httpd
hostsの設定
# vi /etc/hosts 127.0.0.1 localhost 127.0.0.1 app.laravel.local

