一篇文章徹底搞懂Nginx的.conf文件路徑配置
前言:
最近在Nginx上部署Vue項(xiàng)目,同時(shí)還存了一些靜態(tài)資源,但我查了好久都沒(méi)找到一篇詳細(xì)介紹路徑配置的文章,因此就根據(jù)我有限的經(jīng)驗(yàn)寫(xiě)了這篇文章,希望能夠?qū)ψx者有所幫助
詳解server中各部分作用及如何配置
如下圖所示,這是我配置好的一個(gè)server代碼塊,我這里配置了https,所以會(huì)比默認(rèn)的多一部分內(nèi)容,如果你只需要配置http,則只需關(guān)注紅色方框的部分即可,下面會(huì)按順序講解。
①listen項(xiàng)
用來(lái)配置端口號(hào)的,常見(jiàn)端口號(hào)如 http 是80端口, https 是443端口,如圖所示,可以配置多個(gè)端口,表示通過(guò)這些端口都可以請(qǐng)求到。
注意事項(xiàng):
如果是80端口或443端口,是不需要寫(xiě)在路徑中的,因?yàn)橥暾窂角暗膆ttp或https就表明了端口;
但如果配置了靜態(tài)資源是其他端口,如 8080 端口,則需要在訪問(wèn)時(shí)加上端口號(hào)才能請(qǐng)求到
例子:
配置文件:
訪問(wèn)路徑:
②server_name項(xiàng)
如果要配置域名就寫(xiě)域名,沒(méi)有域名就寫(xiě)localhost,這一項(xiàng)決定了訪問(wèn)路徑中的協(xié)議和端口之間的內(nèi)容,也就是下圖的內(nèi)容(我這里配置了域名)
如果寫(xiě)的是localhost,則可以在路徑上通過(guò) 部署到的電腦的IP地址 進(jìn)行訪問(wèn),就是把上圖的域名替換為ip地址進(jìn)行請(qǐng)求
③location 后的路徑項(xiàng)
這一項(xiàng)決定了訪問(wèn)路徑的填寫(xiě)和訪問(wèn)到的資源路徑兩方面,后者一般需要和第④項(xiàng)結(jié)合著理解,一下還會(huì)提及
簡(jiǎn)單而言,我推薦的寫(xiě)法是 “/+你想寫(xiě)的符號(hào)”,如下:
這里的rotograph就是 “你想寫(xiě)的符號(hào)”
而這個(gè)符號(hào)決定了訪問(wèn)路徑,如按上圖,那么我的訪問(wèn)路徑就是
也就是說(shuō)這個(gè)符號(hào)在訪問(wèn)路徑中處于端口號(hào)的后面,而其所訪問(wèn)的就是你設(shè)置所指向的資源,第④項(xiàng)會(huì)說(shuō)的。
注意事項(xiàng):
那么當(dāng)我們不寫(xiě)符號(hào)時(shí),也就是 location / 這樣,則在訪問(wèn)路徑的端口號(hào)后不需要任何東西就可以訪問(wèn)到指定的資源,就是通常理解的“首頁(yè)”
而如果我們配置了多個(gè)location塊,而其后的符號(hào)都是相同的,這時(shí)會(huì)遵循長(zhǎng)路徑優(yōu)先匹配原則,也就是輸入網(wǎng)址,會(huì)優(yōu)先匹配到指定資源路徑更長(zhǎng)的那個(gè)
④root 項(xiàng)
這一項(xiàng)填寫(xiě)的是根路徑,其實(shí)還有另外一項(xiàng),叫 alias,它們的區(qū)別可以見(jiàn) root和alias的區(qū)別 這篇文章(不保真)。
這里主要說(shuō)一下root,它會(huì)結(jié)合第③項(xiàng)配置的路徑,從而得到指定要訪問(wèn)的資源路徑的真實(shí)地址。
例子:
那么,我想通過(guò) http://xxx:端口名/rotograph 這個(gè)路徑來(lái)訪問(wèn)這個(gè)資源怎么辦?
將根路徑設(shè)置成 /usr/show 即可,這里千萬(wàn)注意不要漏掉前面的 /,寫(xiě)成 usr/show是不對(duì)的。
注意事項(xiàng):
如果我們?cè)趓oot項(xiàng)中前面沒(méi)有寫(xiě) /(默認(rèn)的就沒(méi)寫(xiě)),那么會(huì)訪問(wèn)到哪里呢?
其實(shí)Nginx有一個(gè)默認(rèn)站點(diǎn)目錄,一般為 /usr/share/nginx/html ,所以你將默認(rèn)的文件中的html改成這個(gè)路徑,也會(huì)返回Nginx的那個(gè)頁(yè)面,我猜測(cè),如果不寫(xiě) /,那么所有root后的配置路徑在訪問(wèn)時(shí)都會(huì)在前面被拼接一個(gè) /usr/share/nginx/,如下所示:
這個(gè)配置路徑前沒(méi)有 / ,那么其訪問(wèn)的真實(shí)資源地址就是下圖紅框中的地址
所以,如果我們想把項(xiàng)目部署到別的目錄,那么配置root項(xiàng)時(shí)路徑前一定要加 / !
如下:
這樣配置,就只需將項(xiàng)目部署到如下地址 /webapp/vue1中即可。
⑤index項(xiàng)
這一項(xiàng)最簡(jiǎn)單,就是定位到指定資源目錄后,你想展示那個(gè)文件,如我設(shè)置 index.html就展示名為 index.html的文件,我也可以設(shè)置成 pic1.jpg,那么就展示一張圖片
注意事項(xiàng):
配置到index項(xiàng)的文件是不需要在路徑中寫(xiě)出的,會(huì)自動(dòng)展示,如下:
配置:
訪問(wèn)效果:
后記
綜上,只要給出想要訪問(wèn)的資源,那么就很容易配置location塊,只需要將指定資源地址合理劃分就能得到第③項(xiàng)和第④項(xiàng)了,如下:
將紅色框中路徑作為root項(xiàng),將黃色框中/img作為location后的路徑項(xiàng),就可以輕松通過(guò) http://ip地址:端口號(hào)/img訪問(wèn)到該目錄啦~
總結(jié)
到此這篇關(guān)于Nginx的.conf文件路徑配置的文章就介紹到這了,更多相關(guān)Nginx .conf文件路徑配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx實(shí)現(xiàn)動(dòng)靜分離的案例詳解
nginx 和 Tomcat 是兩個(gè)不同的服務(wù)器軟件,在分離部署方面有著各自的優(yōu)勢(shì)和適用場(chǎng)景,一般來(lái)說(shuō),Nginx 適合作為反向代理和負(fù)載均衡服務(wù)器,用于處理靜態(tài)文件和高并發(fā)請(qǐng)求,本文將大家介紹一下nginx實(shí)現(xiàn)動(dòng)靜分離的案例,需要的朋友可以參考下2023-08-08Apache和Nginx的優(yōu)缺點(diǎn)詳解_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
Nginx和Apache一樣,都是HTTP服務(wù)器軟件,在功能實(shí)現(xiàn)上都采用模塊化結(jié)構(gòu)設(shè)計(jì),都支持通用的語(yǔ)言接口。下面通過(guò)本文給大家分享Apache和Nginx比較 功能對(duì)比,感興趣的朋友參考下吧2017-08-08使用google-perftools優(yōu)化nginx在高并發(fā)時(shí)的性能的教程(完整版)
如果使用googler開(kāi)發(fā)的google-perftools優(yōu)化Nginx和MySQL的內(nèi)存管理,性能將會(huì)有一定程度的提升。特別是對(duì)高并發(fā)下的服務(wù)器,效果更明顯2013-02-02nginx配置proxy_pass后返回404問(wèn)題以及Nginx host相關(guān)變量的說(shuō)明
這篇文章主要介紹了nginx配置proxy_pass后返回404問(wèn)題以及Nginx host相關(guān)變量的說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01nginx刷新頁(yè)面出現(xiàn)404解決方案(親測(cè)有效)
本文主要介紹了nginx刷新頁(yè)面出現(xiàn)404解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03總結(jié)高并發(fā)下Nginx性能如何優(yōu)化
這篇文章主要為大家介紹了在高并發(fā)下Nginx性能如何優(yōu)化的總結(jié)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-10-10nginx中狀態(tài)統(tǒng)計(jì)的實(shí)現(xiàn)
本文主要介紹了nginx中狀態(tài)統(tǒng)計(jì)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04Nginx反爬蟲(chóng)策略,防止UA抓取網(wǎng)站
目前網(wǎng)絡(luò)上的爬蟲(chóng)非常多,有對(duì)網(wǎng)站收錄有益的,比如百度蜘蛛(Baiduspider),也有不但不遵守robots規(guī)則對(duì)服務(wù)器造成壓力,還不能為網(wǎng)站帶來(lái)流量的無(wú)用爬蟲(chóng),為防止網(wǎng)站有可能會(huì)被別人爬,通過(guò)配置Nginx, 我們可以攔截大部分爬蟲(chóng)2020-09-09