客戶端請求的頁面如果是靜態網頁,那麼伺服器會直接把靜態網頁的內容響應給客戶端。如果客戶端請求的是動態網頁,伺服器需要先把動態網頁換成靜態網頁,然後再把轉換後的靜態網頁響應給客戶端靜態資源的幾種型別
其基本思路是盡可能避開網際網路上有可能影響資料傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快、更穩定。通過在網路各處放置節點伺服器所構成的在現有的網際網路基礎之上的一層智慧型虛擬網路,cdn系統能夠實時地根據網路流量和各節點的連線、負載狀況以及到使用者的距離和響應時間等綜合資訊將使用者的請求重新導向離使用者最近的服務節點上。其目的是使使用者可就近取得所需內容,解決 internet網路擁擠的狀況,提高使用者訪問**的響應速度。sendfile(檔案讀取)
tcp_nopush(sendfile開啟的情況下,提高網路包的傳輸效率)
tcp_nodelay(keepalive連線下,提高網路包的傳輸實時性)
gzip(壓縮)
gizp_comp_level(壓縮比)
gzip_http_version(gzip的http的版本)
gzip_static(預讀gzip功能)
http協議定義的快取機制(如:expires;cache-control等)客戶端有快取
校驗過期機制
校驗方式
對應頭資訊
校驗是否過期
expires、cache-control(max-age)
協議中的etag頭資訊校驗
etag
last-modified有資訊校驗
last-modified
第一次請求:
第二次請求:
nginx如何開啟跨站訪問? access-controller-allow-origin
name可以為 access-controller-allow-origin 和 access-controller-allow-method
基於http_refer防盜煉配置模組
valid_referers none blocked ip
if($invalid_referer)
反向**
proxy_pass
其他**的一些語法補充:proxy_redirect(跳轉重定向)
proxy_set_header(頭資訊)
proxy_connect_timeout(超時)
配置檔案中的例子:負載均衡:建立在現有網路結構之上,它提供了一種廉價有效透明的方法擴充套件網路裝置和伺服器的頻寬、增加吞吐量、加強網路資料處理能力、提高網路的靈活性和可用性。簡單配置例子:負載均衡,英文名稱為load balance,其意思就是分攤到多個操作單元上進行執行,例如web伺服器、ftp伺服器、企業關鍵應用伺服器和其它關鍵任務伺服器等,從而共同完成工作任務。
paramupstream ronaldo
server
}
意義down
當前的server暫時不參與負載均衡
weight=num
權重,num越大,輪詢到的概率越大
backup
預留的備份伺服器
max_fails
允許請求失敗的次數
fail_timeout
經過max_fails失敗後,服務暫停的時間(預設是10s)
max_conns
限制最大的接收的連線數
演算法意義
輪詢按時間順序逐一分配到不同的後端伺服器
加權輪詢
weight值越大,分配到的訪問機率越高
ip_hash
每個請求按訪問ip的hash結果分配,這樣來自同乙個ip就固定訪問同乙個後端伺服器
least_conn
最少連線數,哪個伺服器連線數少就分發
url_hash
按照訪問的url的hash結果來分配請求,是每個url定向到同乙個後端伺服器
hash關鍵字值
hash自定義的key
url_hash(1.7.2版本以後可用):
key可以是$request_uri,根據url進行hashproxy_cache客戶端->nginx: 1、請求資料a
nginx->服務端: 2、請求資料a
服務端->nginx: 3、返回資料a
nginx->客戶端: 4、返回資料a
客戶端->nginx: 1、請求資料a
nginx->客戶端: 2、返回資料a
proxy_cache_valid(快取過期週期)
proxy_cache_key(快取的維度)
常見配置:
簡單示例proxy_cache_path cache_path levels=1:2 keys_zone=key_name:10m max_size=10g inactive=60m use_temp_path=off;
server
}
if ($request_uri ~ ^/(url_3|login|register|password\/reset))
location /
優勢:每個子請求收到的資料都會形成乙個獨立的檔案,乙個請求斷了,其他請求不受影響。缺點:當檔案很大或者slice很小的時候,可能會導致檔案描述符耗盡等待情況。
Nginx詳解十三 Nginx場景實踐篇之防盜煉
防盜煉 目的 防止資源被盜用 防盜煉設定思路 首要方式 區別哪些請求是非正常的使用者請求 配置語法 valid refer none bloked server names string 預設狀態 配置方法 server location reload一下,再請求 把access.log開啟再重新整...
三 nginx從入門到實踐 場景實踐篇
靜態資源web服務 服務 負載均衡排程器lsb 動態快取 靜態資源型別 非伺服器動態執行生成的檔案 型別 種類 瀏覽器端渲染 html css js jpeg gif png cdn內容分發網路 配置語法 檔案讀取 with file aio 非同步檔案讀取 sendfile開啟的情況下,提高網路包...
Nginx從入門到實踐 基礎篇(安裝)
一 nginx快速搭建與基本引數額使用 版本mainline version 開發版本 stable version 穩定版 legacy version 歷史版本 nginx 官網 基於yum源安裝修改yum源 vim etc yum.repos.d nginx.repo 新增以下內容 nginx...