服务器:Nginx - 最小配置说明
安全服務器是只允許所需數量的服務器。理想情況下,我們將通過單獨啟用其他功能來基于最小系統構建服務器。進行最少的配置也有助于調試。如果該錯誤在最小系統中不可用,則分別添加功能,然后繼續搜索錯誤。
這是運行nginx所需的最低配置:
#?/etc/nginx/nginx.confevents?{}?????????#?event?context?have?to?be?defined?to?consider?config?validhttp?{server?{listen?80;server_name??javatpoint.co??www.javatpoint.co??*.javatpoint.co;return?200?"Hello";}Root,Location和try_files指令
Root 指令
root指令用于設置請求的根目錄,從而允許nginx將傳入的請求映射到文件系統上。
server?{listen?80;server_name?javatpoint.co;root?/var/www/javatpoint.co; }它允許nginx根據請求返回服務器內容:
javatpoint.co:80/index.html?????#?returns?/var/www/learnfk.com/index.html javatpoint.co:80/foo/index.html?#?returns?/var/www/learnfk.com/foo/index.htmlLocation指令
location指令用于根據請求的URI(統一資源標識符)來設置配置。
語法為:
location?[modifier]?path示例:
location?/foo?{#?... }如果未指定修飾符,則將路徑視為前綴,之后可以跟隨任何內容。上面的示例將匹配:
/foo /fooo /foo123 /foo/bar/index.html ...我們還可以在給定的上下文中使用多個location指令:
server?{listen?80;server_name?javatpoint.co;root?/var/www/javatpoint.co;location/{return?200?"root";}location?/foo?{return?200?"foo";} } javatpoint.co:80??/??????#?=>?"root" javatpoint.co:80???/foo????#?=>?"foo" javatpoint.co:80???/foo123?#?=>?"foo" javatpoint.co:80???/bar????#?=>?"root"Nginx還提供了一些可以與 location 指令結合使用的修飾符。
修飾符已分配優先級:
=???????????-?Exact?match ^~??????????-?Preferential?match ~?&&?~*?????-?Regex?match no?modifier?-?Prefix?match首先,nginx將檢查所有精確匹配項。如果不存在,它將尋找優先選項。如果此匹配也失敗,則將按其出現順序測試正則表達式匹配。如果其他所有操作均失敗,則將使用最后一個前綴匹配。
location?/match?{return?200?'Prefix?match:?will?match?everything?that?starting?with?/match'; }location?~*?/match[0-9]?{return?200?'Case?insensitive?regex?match'; }location?~?/MATCH[0-9]?{return?200?'Case?sensitive?regex?match'; }location?^~?/match0?{return?200?'Preferential?match'; }location?=?/match?{return?200?'Exact?match'; } /match?????#?=>?'Exact?match' /match0????#?=>?'Preferential?match' /match1????#?=>?'Case?insensitive?regex?match' /MATCH1????#?=>?'Case?sensitive?regex?match' /match-abc?#?=>?'Prefix?match:?matches?everything?that?starting?with?/match'try_files指令
該指令嘗試不同的路徑,并返回找到的任何路徑。
try_files?$uri?index.html?=404;因此,/foo.html將嘗試按以下順序返回文件:
$uri(/foo.html);index.html如果未找到:404
如果我們在服務器上下文中定義try_files,然后定義查找所有請求的位置,則不會執行try_files。發生這種情況是因為服務器上下文中的try_files定義了其偽位置,該偽位置是可能的最低特定位置。因此,定義location/ 會比我們的偽位置更具體。
server?{try_files?$uri?/index.html?=404;location/{} }因此,我們應該避免在服務器上下文中使用try_files:
server?{location/{try_files?$uri?/index.html?=404;} }作者:GeekGay
鏈接:https://www.imooc.com/article/319107
IT技術分享社區
個人博客網站:https://programmerblog.xyz
文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識
總結
以上是生活随笔為你收集整理的服务器:Nginx - 最小配置说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTML5网页设计基础——播放器图标
- 下一篇: Easy Game