nginx的proxy不是用nginx做爲後端服務器的代理,而是將proxy做爲全部客戶端的代理。php
nginx服務器上的設置nginx
客戶端測試後端
這裏要注意:proxy_pass後面的HOST參數必定不能帶有/號。不然訪問的內容不同。緩存
我如今把/號加上看看效果服務器
總結下:ide
若是不帶/號,那麼訪問http://www.yueyue.com/bbs/ 就是在訪問http://host/bbs測試
若是帶了/號,那麼訪問http://www.yueyue.com/bbs 就是在訪問https://host/
代理
爲了可以讓代理服務器將不一樣的訪問請求發往不一樣的後端服務器上,就須要寫多個代理腳本日誌
好比訪問圖片就訪問RS1 訪問PHP 就訪問RS2圖片
用戶端測試
咱們來看下後端服務器上的訪問日誌
/var/log/httpd/access_log
咱們的客戶端的地址是10.0.1.5,可是在後端服務器上的客戶端地址是10.0.1.11,就是由於代理服務器表明客戶端訪問資源。
爲了可以在後端服務器上顯示真實的客戶端地址須要在代理服務器上設置,在處理請求報文時,添加真實客戶端地址
在nginx配置文件中添加
後端服務器須要將指定的字段顯示到日誌中
就須要編輯httpd.conf文件 /etc/httpd/conf/httpd.conf
客戶端測試
代理服務器也能夠有本身的緩存,這樣能夠更快的響應客戶端的請求
先測試下沒有緩存的狀況下批量請求的響應時間
ab -c 100 -n 1000 http://www.yueyue.com/index.php
如今添加緩存配置
在http的模塊裏添加
客戶端測試
查看緩存路徑