Linux/nginx/apache経由
提供: 初心者エンジニアの簡易メモ
目次
apacheに引き渡す際のreverse_proxy設定
apacheでなく別のnginxに引き渡したい時も同様に使える(cookieもひき注がれる)
- /etc/nginx/conf.d/example.conf
server { listen 8090; server_name example.localhost; location / { proxy_pass http://127.0.0.1:80; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
動的処理はapacheに渡し、静的ファイルはapacheに渡さない場合の設定
server { listen 8090; server_name example.localhost; location ~* \.(jpg|jpeg|gif|png|swf|css|js|inc|ico|pdf|flv|gz|woff|html|htm|txt|xml)$ { root /var/www/zend/example/public; index index.html; ssi on; access_log off; break; } location / { ・・略・・
正規表現の最後に$が付いているが.png?v=20150101などの画像でもhitする
apache側port変更設定
- /etc/httpd/conf/httpd.conf
Listen 80 Listen 8080 NameVirtualHost *:80 NameVirtualHost *:8080
- /etc/httpd/conf/extra/example.conf
<VirtualHost *:8080> ・・略・・
mod_rpafのインストール
apacheのipが127.0.0.1になる問題回避で使用
$ sudo yum install httpd-devel $ cd /usr/local/src $ sudo wget https://raw.github.com/ttkzw/mod_rpaf-0.6/master/mod_rpaf-2.0.c --no-check-certificate $ sudo /usr/sbin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c $ sudo vi /etc/httpd/conf.d/mod_rpaf.conf LoadModule rpaf_module modules/mod_rpaf-2.0.so RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1 10. 172.16. RPAFheader X-Forwarded-For $ sudo /etc/init.d/httpd restart