如何搭建web服務器 使用Nginx搭建反向代理服務器

轉載   如何搭建web服務器 使用Nginx搭建反向代理服務器 :   http://blog.csdn.net/w13770269691/article/details/6977727html

 

引言:最近公司有臺服務器遭受DDOS攻擊,流量在70M以上,因爲服務器硬件配置較高因此不須要DDOS硬件防火 牆。但咱們要知道,IDC機房是確定不容許這種流量一直處於這麼高的,由於無法具體知道後面陸續攻擊的流量會有多大,若是流量過大就會致使整個IDC網絡 癱瘓。咱們都知道北方的數據中心和南方的數據中心從帶寬出口上來說南方多數機房徹底有能力扛得住DDOS攻擊,東莞的電信機房就不錯。有朋友說過面對這種 攻擊能夠在南方電信在放一臺服務器,而後作個反向代理;令我不解的是假若再在南方放一臺服務器,而後在南方電信服務器上作反向代理的話北方的用戶訪問速度確定會很慢(南方機房多爲電信單線,北京的多爲雙線或BGP線路)。好了,咱們言歸正傳,無論用反向代理是怎麼去實現,首先咱們要解決的是如何搭建一臺反向代理服務器,省得臨時抱佛腳。

  首先咱們來看理解一下什麼是反向代理,以下圖:當客戶機向站點發出請求時,請求將轉到代理服務器,而後而後代理服務器將請求轉發給內部網絡上的服務器,並將從服務器上獲得的結果返回給Internet上請求鏈接的客戶,對於訪問服務器的用戶來說,此時的代理服務器對外就表現爲一臺服務器;咱們還能夠在反向代理服務器上加上一些策略,這樣就對web服務器進行了一種安全保護,即便用戶想入侵網站,也沒法到達web服務器;反向代理服務器後端還能夠放置多臺web服務器,從而能夠減輕網站壓力,起到集羣做用nginx

咱們都知道Nginx是一款很是不錯的程序,其最大的優勢就是能承載高併發鏈接,此次咱們就用Nginx來作一臺反向代理服務器

  環境描述:反向代理服務器爲Linux系統,安裝有Nginx;web服務器爲windows系統,裝有IISweb

首先咱們在Nginx上設置反向代理,修改Nginx配置文件,將以下部分刪除windows

刪除完成後添加內容以下: server name 在真實環境中須要設置域名,由於咱們實際訪問網站不多用IP,proxy_pass 爲web服務器的地址,如web服務器的網站用的是8080端口,那麼咱們的 proxy_pass 的格式就是

後端

  server

  {

  listen 80;

  server_name 192.168.1.20; //反向代理服務器IP

  location / {

  proxy_pass http://192.168.1.10; //web服務器IP

  proxy_redirect off;

  proxy_set_header X-Real-IP $remote_addr;

  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  }

  #error_page 404 /404.html; 

 

設置完成後執行/usr/local/nginx/sbin/nginx -t 檢查配置是否正常,若是顯示:the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok configuration file /usr/local/nginx/conf/nginx.conf test is successful 則正常,不然按錯誤提示進行修改。檢查配置文件無誤後殺死Nginx進程,而後從新啓動Nginx。這時候客戶端訪問192.168.1.20這臺服務器獲得的就是192.168.1.10服務器上面的內容了。

  以下圖,用戶在訪問192.168.1.20時,192.168.1.10這臺服務器的IIS記錄了訪問日誌,顯示的均爲192.168.1.20訪問的,而不是客戶端安全

相關文章
相關標籤/搜索