1 upstream web_www{ 2 server 127.0.0.1:5006; 3 server 192.168.1.1:5006;# 可以配置权重 访谒方法 4 #可以更多个 5 } 6 server { 7 listen 80; 8 server_name xxx.domain.com;#域名 9 10 #如果是防备爬虫抓取的使用 11 if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") 12 { 13 return 403; 14 } 15 16 location / { 17 proxy_set_header X-Real-IP $remote_addr; 18 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 19 proxy_set_header Host $http_host; 20 proxy_set_header X-NginX-Proxy true; 21 proxy_pass http://web_www; 22 23 proxy_redirect off; 24 client_max_body_size 20m; 25 } 26 root html; 27 index index.aspx; 28 29 30 error_page 500 502 503 504 /50x.html; 31 location = /50x.html { 32 root html; 33 } 34 35 }
View Code
二、nginx 启动弗成功:
如果处事器已经安置了iis ,想使用nginx 可能遇到各类坑,各类80占用 nginx启动弗成功, 注意检察nginx的logs下的错误信息
可能是配置错误导致启动弗成功,
例如:如果是第一行错误,一般第一行是注释失的不会出问题,那么应该是包罗bom格局的编码
如果呈现 bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions) 那根基上就妥妥的是80端口占用了
解决要领是a. telnet 127.0.0.1 80 然后回车 应该有提示
1 如果是iis占用会有 这样样 HTTP/1.1 400 Bad Request Content-Type: text/html; charset=us-ascii Server: Microsoft-HTTPAPI/2.0 之类的 停用iiis 尝尝
2 如果依然不行 遏制 处事 iis admin 尝尝
b. netstat -aon | findstr "80" 在 tasklist 发明是 有个id 是4的 那就是 system这个进程了 解决要领是 :
1 如果有安置sql数据库 停用报表处事 ,
2 如果依然不行 打开注册表 运行 输入regedit 找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP 改削项start 将3改为0
至此 根基上可以解决 ,,解决要领挨次按照情况来
windows server 下iis, nginx 代办代理 负载