根目錄和索引文件 root 指令指定將用于搜索文件的根目錄。 為了獲取所請求文件的路徑,NGINX 將請求 URI 附加到 root 指令指定的路徑。該指令可以放在 http {} , server {} 或 location {} 上下文中的任何級別。在下面的示例中,為虛擬服務器定義了 root 指令。 它適用于未包含根指令的所有 location {} 塊,以顯式重新定義根: server { root /www/data; location / { } location /images/ { } location ~ \.(mp3|mp4) { root /www/media; } } 在這里,NGINX 針對 /images/ 開頭的 URI 將在文件系統的 /www/ data/images/ 目錄中搜索相應文件。 如果 URI 以 .mp3 或 .mp4 擴展名結尾,則 NGINX 會在 /www/media/ 目錄中搜索該文件,因為它是在匹配的位置塊中定義的。 如果請求以 / 結尾,則 NGINX 將其視為對目錄的請求,并嘗試在目錄中查找索引文件。 index 指令定義索引文件的名稱(默認值為 index.html)。要繼續該示例,如果請求 URI 是 /images/some/path/ ,則 NGINX 會返回文件 /www/data/images/some/path/index.html (如果存在)。如果沒有,NGINX 默認返回 HTTP 404 錯誤(未找到)。要配置 NGINX 以返回自動生成的目錄列表,請在 autoindex 指令中包含 on 參數: location /images/ { autoindex on; } 你可以在 index 指令中列出多個文件名。 NGINX按指定的順序搜索文件并返回它找到的第一個文件。 location / { index index.$geo.html index.htm index.html; } 這里使用的 $geo 變量是通過 geo 指令設置的自定義變量。變量的值取決于客戶端的 IP 地址。 要返回索引文件,NGINX 會檢查它是否存在,然后對通過將索引文件的名稱附加到基礎 URI 上獲得的新 URI 進行內部重定向。內部重定向導致對位置的新搜索,并且可能最終位于另一個位置,如以下示例所示: location / { root /data; index index.html index.php; } location ~ \.php { fastcgi_pass localhost:8000; #... } 這里,如果請求中的 URI 是 /path/ ,并且 /data/path/index.html 不存在但 /data/path/index.php 存在,則內部重定向到 /path/index.php 將映射到第二個位置。結果,請求被代理。 嘗試幾種選擇 try_files 指令可用于檢查指定的文件或目錄是否存在; NGINX 會進行內部重定向,如果沒有,則返回指定的狀態代碼。例如,要檢查對應于請求 URI 的文件是否存在,請使用 try_files 指令和 $uri 變量,如下所示: server { root /www/data; location /images/ { try_files $uri /images/default.gif; } } 該文件以 URI 的形式指定,使用在當前位置或虛擬服務器的上下文中設置的根或別名指令進行處理。在這種情況下,如果對應于原始 URI 的文件不存在,NGINX 會將內部重定向到最后一個參數指定的 URI,并返回 /www/data/images/default.gif 。 最后一個參數也可以是狀態代碼(直接以等號開頭)或位置名稱。 在以下示例中,如果 try_files 指令的所有參數都不會解析為現有文件或目錄,則會返回 404 錯誤。 location / { try_files $uri $uri/ $uri.html =404; } 在下一個示例中,如果原始 URI 和帶有附加尾部斜杠的 URI 都不會解析為現有文件或目錄,則會將請求重定向到指定位置,并將其傳遞給代理服務器。 location / { try_files $uri $uri/ @backend; } location @backend { proxy_pass http://backend.example.com; } 有關更多信息,請觀看 內容緩存 網絡研討會,了解如何顯著提高網站性能,并深入了解 NGINX 的緩存功能。 優化服務內容的性能 加載速度是提供任何內容的關鍵因素。 對 NGINX 配置進行微小優化可以提高生產力并幫助實現最佳性能。 啟用 sendfile 默認情況下,NGINX 會自行處理文件傳輸,并在發送之前將文件復制到緩沖區中。 啟用 sendfile 指令消除了將數據復制到緩沖區的步驟,并允許將數據從一個文件描述符直接復制到另一個文件描述符;蛘,為了防止一個快速連接完全占用工作進程,可以使用 sendfile_max_chunk 指令限制單個 sendfile() 調用中傳輸的數據量(在本例中為1 MB): location /mp3 { sendfile on; sendfile_max_chunk 1m; #... } 啟用 tcp_nopush 將 tcp_nopush 指令與 sendfile on; 指令一起使用。這使得 NGINX 可以在 sendfile() 獲取數據塊之后立即在一個數據包中發送 HTTP 響應頭。 location /mp3 { sendfile on; tcp_nopush on; #... } 啟用 tcp_nodelay tcp_nodelay 指令允許覆蓋 Nagle 的算法 ,該算法最初設計用于解決慢速網絡中小數據包的問題。該算法將許多小數據包合并為一個較大的數據包,并以 200 毫秒的延遲發送數據包。如今,在提供大型靜態文件時,無論數據包大小如何,都可以立即發送數據。延遲也會影響在線應用程序(ssh,在線游戲,在線交易等)。默認情況下, tcp_nodelay 指令設置為 on,這意味著禁用了 Nagle的算法。此指令僅用于 keepalive 連接: location /mp3 { tcp_nodelay on; keepalive_timeout 65; #... } 優化積壓隊列 其中一個重要因素是 NGINX 可以多快地處理傳入連接。一般規則是在建立連接時,將其放入偵聽套接字的 "listen" (監聽)隊列中。在正常負載下,隊列很小或根本沒有隊列。但是在高負載下,隊列會急劇增長,導致性能不均勻,連接中斷,延遲增加。 顯示積壓隊列使用命令 netstat -Lan 來顯示當前監聽隊列。輸出可能如下所示,它顯示在端口 80上的監聽隊列中,有 10 個未接受的連接,這些連接針對配置的最多 128 個排隊連接。這種情況很正常。 Current listen queue sizes (qlen/incqlen/maxqlen) Listen Local Address 0/0/128 *.12345 10/0/128 *.80 0/0/128 *.8080 相反,在以下命令中,未接受的連接數(192)超過了 128 的限制。當網站流量很大時,這種情況很常見。要獲得最佳性能,需要在操作系統和 NGINX 配置中增加可以排隊等待 NGINX 接受的最大連接數。 Current listen queue sizes (qlen/incqlen/maxqlen) Listen Local Address 0/0/128 *.12345 192/0/128 *.80 0/0/128 *.8080 調整操作系統 將 net.core.somaxconn 內核參數的值從其默認值(128)增加到足以容納大量流量的值。在這個例子中,它增加到 4096。
調整 NGINX 如果將 somaxconn 內核參數設置為大于 512 的值,請將 backlog 參數增加在 NGINX listen 指令以匹配修改: server { listen 80 backlog=4096; # ... } 文章翻譯自Nginx Serving Static Content ,部分做了語義調整。 |
免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業用途,如果損害了您的權利,請聯系我們及時修正或刪除。謝謝!
始終以前瞻性的眼光聚焦站長、創業、互聯網等領域,為您提供最新最全的互聯網資訊,幫助站長轉型升級,為互聯網創業者提供更加優質的創業信息和品牌營銷服務,與站長一起進步!讓互聯網創業者不再孤獨!
掃一掃,關注站長網微信
當我們在共享網絡訪問的時候,可能會遇到提示指定的網絡名不再可用的問題,這可能是由于我們的共享網絡出現了錯誤,也可能是被共享的對象所拒絕了。指定的網絡名 ......
文/曹楊 原標題:誰還看電視? 爸爸戴一副老花鏡,媽媽戴一副近視鏡,一人坐在沙發,一人躺在床上,各自刷著自己關注的博主更新的短視頻。電視也許開著,但只是背景! ∵@樣的畫面,幾乎成了洛奇家的常 ...
1、首先進入到“百度”軟件中, 2、然后在其中輸入“百度識圖”, 3、之后點擊圖中的“開始使用”按鈕, 4、緊接著點擊右下角的“相冊”功能, 5、在相冊下 ......
圖片來源于簡書 文/郭開森 楊帆 陸玖財經準備開新欄目了,每周一創始人郭開森和楊帆合體郭德帆,對行業進行一些觀察和評論,第一篇我們仍是打算寫社區團購,這是當下最火的話題。 來過陸玖財經做客的朋友們...
一、軟件沖突1、首先確認是否是應用程序沖突導致的。2、查看是否只有特定幾個游戲或應用會導致該問題。3、如果是應用沖突,那么只要卸載這些app就可以解決了。二 ......
電腦端:1、大家可以點擊右邊鏈接進入網頁版的百度網盤,進入之后點擊“去登錄”。https://pan.baidu.com/2、之后正確的輸入賬號密碼進行登錄就好啦。手機端:1 ......
一、N100對比intel i3 1、N100的跑分達到了147210分,這個數據可以達到i3的七代級別。 2、在跑分上也是超越了大部分的I3七代CPU,不過比I3八代要弱勢一些。 3 ......
在填寫一些項目申請書中,總是免不了要選擇一些數字,但是在方框中如何插入數字,該怎么辦呢?那么下面就由學習啦小編給大家分享下word在方框里輸入數字的技巧, ......
8月15日消息 上周,有媒體報道前身為百度圖片的“榴蓮”APP含有大量不雅視頻內容被用戶舉報。對此,百度圖片官方進行了回應,百度圖片表示已經對報道中所涉及的“生吃旋風哥”等爭議內容進行了下線處理。 此外,百度...
WPS Office手機版怎么加橫線?很多用戶還不知道WPS Office手機版怎么加橫線,WPS Office手機版怎么加橫線,WPS Office手機版怎么打橫線,WPS Office手機版怎么弄 ......
迅雷前綴是什么 答:迅雷前綴是(magnet:?xt=urn:btih:)括號里的就是了。 我們只要在這段文字之后輸入后續的內容,就可以創建下載鏈接了。 1、磁力鏈接不基于文 ......
一、內容特權。 1、半價點播。 許多站內視頻都需要付費觀看,而大會員用戶可以直接半價享受; 購買成功后的48h內無限次觀看。有部分的內容是只限在中國大陸內觀 ......
1、首先打開小米運動的“實驗室功能”。 2、接著點擊“門卡模擬”。 3、然后點擊“我知道了”。 4、最后貼近就可以刷卡成功了。...
答:華為P系列: 華為p40,華為p40plus,華為p50,華為p50e,華為p60 華為mate系列: 華為mate40,華為mate50,華為mate50e,華為mate60 華為nova系列: 華為n ......
近期有用戶反映,電腦在更新Windows 11 Insider Preview 25252.1000后,出現了應用和已壓縮的文件點擊毫無反應,拖拽都不行,只能從開始菜單打開的情況,這是怎 ......
可見單元格就是不包括隱藏或者篩選篩選后隱藏起來的單元格區域。方法:篩選或隱藏數據,復制需要粘貼的值,在目標單元格區域左上角的第一個單元格處右擊,選擇【 ......
答:驍龍8+更好。 驍龍7+gen2實際上就是驍龍8+的低配版本。 在一些其他的核心架構方面都是保持一致的,比如說CPU的架構、GPU的架構等等。 驍龍7+和驍龍8+具體 ......
文/黎明 一場針對中國互聯網巨頭的反壟斷風暴正在醞釀,而且這次動真格了。 11月10日,國家市場監管總局發布《關于平臺經濟領域的反壟斷指南(征求意見稿)》,要加大對互聯網巨頭涉嫌壟斷的調查和監管。 ...
win11系統如何釋放掉系統默認保留的存儲空間?一般情況下,Windows會保留一些存儲空間,以便設備獲得良好性能和成功更新。但是當出現系統盤儲存空間不足時,我們會將幾個G的保留空間釋放出來,以解燃眉之急。本期教...
文件被win10系統誤報病毒自動刪除了如何進行恢復?有用戶下載了某些破解軟件卻被Win10系統誤認為是病毒文件而自動刪除,當然系統自帶殺毒軟件其實挺不錯的,就是有時候會誤報,大家遇到這種情況的時候就希望把誤刪的...
1、先打開機頂盒進入主界面,并且使用遙控器打開設置。 2、然后選擇“賬號與安全”,并且進入。 3、最后往下面翻就可以看到“ADB調試”的選項,直接開啟就行了 ......
答:在3DMark壓力測試當中,顯卡需要超高97%才能夠算合格,證明顯卡的穩定性是過關的。 1、一般的默認情況下在2500~3000分就算很正常的了。 2、分數越高說明顯卡 ......
羅技g304dpi燈顏色代表什么:1、藍色:這種情況是正常工作的顯示,如果說是常亮或者閃爍,那都沒有問題這是在正常工作呢。2、紅色:如果說是紅燈閃爍的話那就是 ......
win11系統快速跳過聯網創建本地管理賬戶3種方法?現在市面上銷售的品牌筆記本和臺式機基本上都預裝Windows11家庭中文版正版操作系統,聯網后系統會自動激活。當用戶拿到新機器后還需要按照cortana(小娜)的提示一步...
答:中高端水平 i513500hx在處理器當中是處于一個中高端的水平。 i513500hx是第十一代酷睿處理器系列的一員,基礎頻率為2.4GHz,表現十分的不錯。 i513500hx介 ......
我們經常用WPS的時候,如果需要輸入波浪號~,會發現鍵盤上的波浪號輸入之后在最上面,但是為了美觀,我們希望波浪號顯示在中間。這里總結了三個方法分享給大家 ......
相信有非常多使用過筆記本的用戶都聽說過獨顯直連這個詞,但很多用戶并不了解獨顯直連是什么,又有什么用處,那么下面就和小編一起來看看什么是獨顯直連和開啟這 ......
win11系統開機總是自動登錄OneDrive如何關閉?win11系統開機的時候,會自動啟動OneDrive,不想要啟動,該怎么操作呢?下面我們就來看看詳細的教程。 在OneDrive界面點小齒輪按鈕,下拉菜單中點【設置】。 單擊【...
打開軟件,直接填寫就可以。 1、下載安裝easyconnect軟件, 2、打開easyconnect應用,在如圖所示的“服務器地址”一欄輸入如圖所示網址,點擊“連接”, 3、等 ......