nginx 指向一个文件夹_弄懂nginx的语法就是这么简单
生活随笔
收集整理的這篇文章主要介紹了
nginx 指向一个文件夹_弄懂nginx的语法就是这么简单
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
“寫給自己看,說給別人聽。”nginx應該是我們常用到的一個軟件了,它的用法和語法也很簡單,本文主要介紹nginx語法以及常用命令。 windows下,是對應的安裝目錄下的conf目錄。 windows下,對應的目錄是在安裝目錄下的html目錄。 nginx?-V nginx?-h nginx?-t nginx?-s?reload start?nginx nginx?-s?stop nginx?-s?quit注意windows下需要將nginx.exe加入環境變量,然后才能執行上面的命令。不要雙擊啟動,不然只能從任務列表中刪除 當我們打開nginx.conf文件你會看到和下面類似的結果:當nginx以上面的配置加載啟動后,我們就可以訪問 http://localhost這個地址了,然后默認會返回html目錄下的index.html文件內容。nginx的配置塊嵌套關系如下:
log_format?combined?"...";
Context:??http
Syntax:?access_log?path?[format?[buffer=size]?[gzip[=level]]?[flush=time]?[if=condition]];
access_log?off;Default:??
access_log?logs/access.log?combined;
Context:??http,?server,?location,?if?in?location,?limit_except比如log_format只能出現在http指令塊中,而access_log則可以出現在http和server,location這些指令塊中。你是不是會疑惑,既然一個指令能出現在多個指令塊中,那么到底哪個會生效呢?在nginx中存儲值的指令繼承規則是向上覆蓋。當子配置存在時,直接覆蓋父配置塊,子配置不存在時,直接使用父配置塊。存儲值的指令指的是指令后面的數據是一個值。比如 root html; root后面跟的就是一個值。
Nginx配置目錄
當我們安裝好nginx之后,我們主要關注兩個文件夾/etc/nginx/conf.d/ 文件夾,是我們進行子配置的配置項存放處,/etc/nginx/nginx.conf 主配置文件會默認把這個文件夾中所有子配置項都引入
/usr/share/nginx/html/ 文件夾,通常靜態文件都放在這個文件夾,你也可以放到其他地方
Nginx的常用命令
查看Nginx版本號
nginx幫助命令
驗證配置語法是否正確
配置文件修改重裝載命令
啟動nginx
快速停止或關閉nginx
正常停止或關閉(會等到worker處理完成請求后關閉)
Nginx配置語法
配置文件由指令與指令塊構成
每條指定以分號(;)結尾,指令與參數間以空格符號分割
指令塊以大括號({})將多條指令組織在一起
include語句允許組合多個配置文件以提升可維護性
使用#符號添加注釋
使用$符號使用變量
部分指令參數支持正則表達式
nginx指令
上面列出了一些常用的指令快,但是指令快中可以寫哪些指令呢?指令那么多,我需要去背嗎?我告訴你完全用不著,記不住的時候查文檔就行了。我們都知道nginx實際是由很多個模塊組合到一起的,哪些模塊提供了哪些功能一看便知。首先打開nginx的官方文檔(nginx.org/en/docs),從中我們可以看到nginx提供了哪些變量,哪些模塊。nginx模塊模塊提供了各種功能,基本上看到名字也就明白了提供哪方面的功能。當我們點開某一個module的時候,如果那個module沒有build進去,那么它會告訴你如下信息nginx未build module提示nginx -V 可以查看nginx的配置參數,可以看到除了核心模塊之外還添加了哪些模塊。在比如我們查看ngx_http_core_module看看這個模塊提供了提供的root指令root指令從上圖中示例可以看出來,root指令寫的位置是在location指令塊中的。但是它還能寫到http,server這兩個指令塊中。這個指令的context指的是指令能夠出現的位置。如果塊指令可以在括號內包含其他指令,則將其稱為context(上下文,比如event,http,server,location)Syntax:?log_format?name?[escape=default|json|none]?string?...;Default:??log_format?combined?"...";
Context:??http
Syntax:?access_log?path?[format?[buffer=size]?[gzip[=level]]?[flush=time]?[if=condition]];
access_log?off;Default:??
access_log?logs/access.log?combined;
Context:??http,?server,?location,?if?in?location,?limit_except比如log_format只能出現在http指令塊中,而access_log則可以出現在http和server,location這些指令塊中。你是不是會疑惑,既然一個指令能出現在多個指令塊中,那么到底哪個會生效呢?在nginx中存儲值的指令繼承規則是向上覆蓋。當子配置存在時,直接覆蓋父配置塊,子配置不存在時,直接使用父配置塊。存儲值的指令指的是指令后面的數據是一個值。比如 root html; root后面跟的就是一個值。
python爬蟲人工智能大數據公眾號
總結
以上是生活随笔為你收集整理的nginx 指向一个文件夹_弄懂nginx的语法就是这么简单的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: a标签去下划线或文字添加下修饰_HTML
- 下一篇: [译] 论 Rust 和 WebAsse