nginx location 匹配規(guī)則

處理靜態(tài)內(nèi)容

root 指令

首先,創(chuàng)建/data/ www目錄并在該目錄下創(chuàng)建index.html文件,其次創(chuàng)建/data/images目錄并在該目錄下放入一些圖片。

接下來,打開配置文件。默認配置文件已經(jīng)包含多個服務器塊的幾個示例,大部分注釋掉了?,F(xiàn)在,注釋掉所有這些塊,并啟動一個新的服務器塊。內(nèi)容如下:

server {
    listen 90;
    location / {
        root /data/www;
    }

    location /images/ {
        root /data;
    }
}

當我們在瀏覽器輸入以下地址時,http://127.0.0.1:90,則會顯示/data/www目錄下的index.html文件;當我們在瀏覽器輸入以下地址時,http://127.0.0.1:90/images/1.jpeg,則會顯示/data/images目錄下的圖片。

我們在瀏覽器中輸入以下地址 http://127.0.0.1:90/images/1.jpeg 訪問圖片的時候,路由中的/images/會拼接在/data后,然后去訪問/data/images/目錄下的圖片資源。

alias 指令

我們也可以使用alias 指令。如下

   #location /images/ {
   #   root /data;
   #}

   location /images {
       alias /data/images;
   }

當我們在瀏覽器輸入以下地址時,http://127.0.0.1:90/images/1.jpeg,則會顯示/data/images目錄下的圖片。

root 指令與 alias 指令的區(qū)別

假如圖片在服務器中的路徑為 /data/images/file/img/1.jpeg

  • root 路徑完全匹配訪問
location /images {
    root /data
}

用戶訪問的時候,請求為:url:port/images/file/img/1.jpeg

  • alias 則可以為該路徑起個別名
  location /hello {
       alias /data/images;
  }

用戶訪問的時候,請求為:url:port/hello/file/img/1.jpeg。如此相當于為目錄/data/images做了一個別名。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容