nginx學習筆記

1、安裝依賴包gcc、pcre-devel、zlib-devel、openssl-devel

2、下載nginx

nginx下載地址:
https://nginx.org/download/

3、配置nginx.conf

修改端口和服務器ip

4、啟動nginx

如果出現報錯:nginx: [error] open() "
/usr/local/nginx/logs/nginx.pid" failed

則運行:

再次啟動即可! 5、查看nginx進程是否啟動

6、web查看

所有命令都必須進入到usr/local/nginx/sbin目錄下執行

1、查看版本號

2、關閉nginx

3、啟動nginx

4、重新加載nginx

效果:訪問反向代理服務器地址後頁面轉發到其他網址

配置nginx.conf 添加proxy_pass 值為需要nginx轉發的地址

2、重新加載nginx

效果:目標服務器有多個tomcat,

當用戶訪問路徑中包含edu則訪問端口為8080的tomcat

當用戶訪問路徑中包含vod則訪問端口為8081的tomcat

1、核心配置

2、配置說明

1、http塊加入配置

2、server--location配置proxy_pass

3、分配策略

a、輪詢(默認)

每個請求按照實際順序之一分配到不同服務器,如果服務器宕機,會自動剔除

b、weight

權重。默認為1,權重越高被分配客戶端越高。

c、ip_hash

每個請求按照訪問ip的hash結果分配,這也每個訪客固定訪問一個後端服務器,可以解決session問題。

d、fair(第三方)

按後端服務器的響應時間分配服務器,響應時間越短,越優先分配。

動態請求和靜態請求(html、css、image等)分開

為什麼?提高訪問效率

Nginx動靜分離簡單來說就是把動態跟靜態請求分開,不能理解成只是單純的把動態頁面和靜態頁面物理分離,嚴格意義上說應該是動態請求和靜態請求分開,可以理解成使用Nginx處理靜態頁面,tomcat處理動態頁面。動靜分離衝目前實現角度來講大致分為兩種:

一種是存粹把靜態文件獨立成單獨的域名,放在獨立的服務器上,也是目前主流推崇的方案;

另外一種方法就是動態跟靜態文件混合在一起發佈,通過nginx來分開。

通過location指定不同的後綴名實現不同的請求轉發,通過 expires 參數設置,可以使瀏覽器緩存過期時間,減少與服務器之間的請求和流量,具體 expires 定 義:是給一個資源設定一個過期時間,也就是說無需去服務端證,直接通過瀏覽器自身確認是否過期即可,所以不會產生額外的流量,此種方法非常適合不經常變動的資源。〈如果經常更新的文件,不建議使用expires 來緩存〉,我這裡設置3(1,表示在這3天之內訪問這個url,發送一個請求.比對服務器該文件最後更新時間沒有變化,則不會從服務器抓取,返回狀態碼304,如果有修改,則直接從取務器重新下載,返回狀態碼200。


分享到:


相關文章: