http
{
upstream www.test2.com {
server 10.1.165.36:80 weight = 3;
server 10.249.198.235;
server 10.1.168.1 down;
server 10.1.168.2 backup;
#ip_hash;
}
server
{
location / {
proxy_pass http://www.test2.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Nginx负载均衡需要添加 upstream 和在Server中添加proxy_pass
server 10.1.165.36:80 weight = 3; 代表这个服务器会有相同概率的3倍被访问
server 10.1.168.1 down; 暂时不使用
server 10.1.168.2 backup; 压力大的时候才会启动
ip_hash;通过IP地址进行hash匹配。但是会有一些弊端,比如Nginx不在最外层的话就无法获取IP等
proxy_pass http://www.test2.com 代表访问的网址
例如:
http
{
......
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
......
}
也有可能是PHP代码不正确,比如SVN冲突等原因。
一、设置X-Forwarded-For段
nginx配置示例:
{
location
{
...
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
...
}
}
二、在iis站点上安装isapi filter
在f5的开发论坛上找到的,按开发者的话说,是为了解决iis放在f5后记录不到用户ip的问题,管他前端是f5还是nginx还是squid还是haproxy,都可以用。
装完之后重启下iis即可。
https://devcentral.f5.com/weblogs/Joe/archive/2009/08/19/x_forwarded_for_log_filter_for_windows_servers.aspx
安装方法,从官方文档复制了过来的,大家看看咯。
Installation
Follow these steps to install the filter.
Download and unzip the F5XForwardedFor.zip distribution.
Copy the F5XForwardedFor.dll file from the x86\Release or x64\Release directory (depending on your platform) into a target directory on your system. Let's say C:\ISAPIFilters.
Ensure that the containing directory and the F5XForwardedFor.dll file have read permissions by the IIS process. It's easiest to just give full read access to everyone.
Open the IIS Admin utility and navigate to the web server you would like to apply it to.
For IIS6, Right click on your web server and select Properties. Then select the "ISAPI Filters" tab. From there click the "Add" button and enter "F5XForwardedFor" for the Name and the path to the file "c:\ISAPIFilters\F5XForwardedFor.dll" to the Executable field and click OK enough times to exit the property dialogs. At this point the filter should be working for you. You can go back into the property dialog to determine whether the filter is active or an error occurred.
For II7, you'll want to select your website and then double click on the "ISAPI Filters" icon that shows up in the Features View. In the Actions Pane on the right select the "Add" link and enter "F5XForwardedFor" for the name and "C:\ISAPIFilters\F5XForwardedFor.dll" for the Executable. Click OK and you are set to go.
I'd love to hear feedback on this and if there are any other feature request, I'm wide open to suggestions. The source code is included in the download distribution so if you make any changes yourself, let me know!
Good luck and happy filtering!