1.多個(gè)server的優(yōu)先級(jí)
以每個(gè)server區(qū)塊都監(jiān)聽(tīng)80端口為例,www.pm.com對(duì)應(yīng)服務(wù)器ip地址,匹配順序?yàn)椋?/p>
①server_name和www.pm.com完全相同的區(qū)塊。
②server_name為 *.pm.com 的區(qū)塊。(通配符在前)
③server_name為 pm.* 的區(qū)塊。(通配符在后)
④server_name使用正則表達(dá)式并能匹配上www.pm.com的區(qū)塊。
⑤如果都沒(méi)有匹配到,將選擇 listen 80 default_server;的區(qū)塊。
⑥如果沒(méi)有第5項(xiàng),則選擇第一個(gè)配置文件的第一個(gè)server區(qū)塊。

訪問(wèn)域名www.pm.com就是優(yōu)先選擇上面的server。
如果此時(shí)以ip訪問(wèn),在請(qǐng)求頭中的Host字段的值就是192.168.1.7,無(wú)法匹配到server_name,就會(huì)按照規(guī)則匹配到下面的那個(gè)server。

2.禁止IP訪問(wèn)
禁止IP訪問(wèn)可以防止別人惡意將域名解析到自己的IP上。
兩種形式:

注:第一種方法必須使用 default_server,如果別的地方要用default_server,可以用第二種方法的形式。
3.多用include(寫(xiě)好注釋)
一臺(tái)服務(wù)器配置多個(gè)server網(wǎng)站,會(huì)導(dǎo)致主配置文件nginx.conf非常臃腫,可讀性變差,則可以多使用include方法,簡(jiǎn)化主配置文件,便于運(yùn)維人員維護(hù)。
4.使用alias保護(hù)網(wǎng)站真實(shí)目錄結(jié)構(gòu)
當(dāng)我們以http://www.pm.com/image/logo.png訪問(wèn)該圖片時(shí),按常規(guī)來(lái)說(shuō),訪問(wèn)者就知道了該圖片的路徑位置
location /image {
root /pm_code;
}
對(duì)應(yīng)的路徑為 /pm_code/image/
當(dāng)使用alias時(shí):
location /image {
alias /pm_code;
}
此時(shí)圖片真實(shí)的位置是在/pm_code下,/image是一個(gè)虛擬目錄,alias后面是絕對(duì)目錄路徑。
5.error_page的配置
模擬404報(bào)錯(cuò)

當(dāng)輸入一個(gè)不存在的網(wǎng)址時(shí),如http://www.pm.com/jfkdjfk 會(huì)跳轉(zhuǎn)到/pm_code/www/404.jpg
模擬502報(bào)錯(cuò)

在瀏覽器中輸入www.pm.com,鏈接超時(shí),會(huì)顯示/pm_code/www/500.jpg
注意:兩者之間的格式不同。500必須再寫(xiě)一個(gè)location。
6.try_files配置
一個(gè)簡(jiǎn)單的例子:

當(dāng)在瀏覽器輸入www.pm.com時(shí),會(huì)先去找400.html,如果沒(méi)有再去找index.html
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。