apache反向代理主要用來做負載均衡,BalancerMember參數loadfactor可設定對應權重;現在要實作的功能是一台應用伺服器一個端口根據url轉發到不同的位址,也用到了反向代理:
目前開發環境:xampp7.3.6
1)apache開啟module支援:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_express_module modules/mod_proxy_express.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule watchdog_module modules/mod_watchdog.so
LoadModule xml2enc_module modules/mod_xml2enc.so
2)vhost配置:8080接受使用者請求,然後根據路由轉發到8081或其他ip:port
<VirtualHost *:8081>
DocumentRoot "處理php應用的路徑位址"
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
</VirtualHost>
<VirtualHost *:8080>
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /api/路由路徑/ http://其他ip:port/api/
ProxyPassReverse /api/路由路徑/ http://其他ip:port/api/
ProxyPass /api/ http://127.0.0.1:8081/api/