PC1 为负载均衡主机+网站1
PC2 为第二台转发的网站2
PC1 设置虚拟主机,端口绑定80,和8080 80为负载均衡使用; 8080部署网站
PC2 就一个网站(一个端口就好)
(之前看到一个百度知道的问题,为什么每次访问都只访问到PC2,那是他没在PC1上设置两个端口来做不同的事情,所以PC1的网站根本无效)
一,在httpd.conf启用加载模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
二、设置负载均衡的权重
ProxyRequests Off
<Proxy balancer://myBlancer>
BalancerMember http://localhost:8080 loadfactor=6
BalancerMember http://192.168.1.10:80 loadfactor=4
</Proxy>
ProxyRequests Off 是让Apache使用反向代理,在使用反向代理后才能用到ProxyPass ,继续看
三、设置虚拟主机
<pre name="code" class="plain"><VirtualHost *:80>
ServerAdmin 邮箱
ServerName localhost
ServerAlias localhost
ProxyPass / <span style="font-family: Arial, Helvetica, sans-serif;">myBlancer</span><span style="font-family: Arial, Helvetica, sans-serif;">://mycluster/ stickysession=sessionid nofailover=On </span>
ProxyPassReverse / <span style="font-family: Arial, Helvetica, sans-serif;">myBlance</span><span style="font-family: Arial, Helvetica, sans-serif;">r://mycluster/ </span><span style="font-family: Arial, Helvetica, sans-serif;">stickysession=sessionid nofailover=On</span>
</VirtualHost>
<VirtualHost ×:8080>
ServerAdmin 邮箱
DocumentRoot "/home/dev/www/"
ServerName localhost
ServerAlias localhost
</VirtualHost>
这里的ProxyPasss指向了第二步里面的myBlancer
<span style="font-family: Arial, Helvetica, sans-serif;">stickysession=sessionid nofailover=On 网站1和网站2的session同步复制</span>
ProxyPassReverse 一样要有,如果没有代码里相对路径会出问题。
</pre><pre name="code" class="plain">
重启你的APACHE吧!网站1和网站2,可以做些标识分辨出是不同的网站,访问只需在浏览器里刷新就会看到切换到不同的网站了。