nginx反向代理服務器解決vps掛站被封

由於衆所周知的原因,導致vps一直不能訪問,想到nginx反向代理服務器可以部署到任意主機上,於是想了一招可以解決。參考nginx+apache單IP多站點反向代理配置,http://www.straka.cn/blog/nginx_apache_multisites_conf/。網站部署在A站點,當A站點被封時,可以另外申請主機B作爲反向代理服務器,反向代理服務器只需要安裝nginx並配置,再將域名解析到代理服務器上即可,因而當B被封殺,就申請B1、B2、B3……總不至於把DO公司的IP全封了吧,哈哈。

nginx安裝(以ubuntu爲例)

sudo apt-get install nginx

配置同另一篇博文介紹,以A站點IP爲a.a.a.a,域名爲www.aaa.com爲例:

server{

 listen 80;

 server_name www.aaa.com;

 

 location / {

   proxy_pass http://a.a.a.a:80/;

   proxy_set_header Host $host;

   proxy_set_header X-Real-IP $remote_addr;

   proxy_set_header X-Forwarded-For $remote_addr;

   #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  }

}

注意這裏要設置proxy_set_header,其中$host爲客戶端所請求的主機名,如果後續服務器配置爲多站點模式必須保留轉發,否則後續服務器無法根據請求主機正確解析。$remote_addr爲客戶端IP地址,保留並轉發至服務器,否則服務器得到的客戶端IP全部爲代理服務器地址,無法做統計,同理X-Forwarded-For爲代理記錄,設爲$remote_addr表示不將本代理IP地址記錄,如果要加上本代理服務器IP,則加上$proxy_add_x_forwarded_for。

原文:

http://www.straka.cn/blog/nginx_antigfw/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章