首頁 > 後端開發 > php教程 > 如何設定 Nginx 來為來自不同 URI 的巢狀子資料夾提供服務?

如何設定 Nginx 來為來自不同 URI 的巢狀子資料夾提供服務?

Barbara Streisand
發布: 2024-11-29 02:28:13
原創
165 人瀏覽過

How Can I Configure Nginx to Serve Nested Subfolders from Different URIs?

巢狀子資料夾的Nginx 位置配置

在Nginx 配置的上下文中,存取具有特定URI 的子資料夾可能具有挑戰性。這就是位置指令發揮作用的地方。

考慮以下場景:您有一個類似 /var/www/mysite/ 的目錄結構,其中包含兩個子資料夾:/static 和 /manage。您希望透過根 URI(例如“http://example.org/”)訪問 /static 並透過“/manage”訪問 /manage(例如“http://example.org/manage”)。

讓我們分解提供的 Nginx 配置:

server {
  listen 80;
  server_name example.org;
  ...

  # Static folder location
  location / {
    root $uri/static/;
    index index.html;
  }

  # Manage folder location (attempt 1)
  location /manage {
    root $uri/manage/public;
    try_files $uri /index.php$is_args$args;
  }

  # PHP processing location
  location ~ \.php {
    ...
  }
}
登入後複製

雖然 / 位置工作正常,但 /manage 位置失敗。這是因為 root 指令不正確。要在別名中使用子資料夾,應使用別名而不是 root。

/manage 的更新位置應如下所示:

location ^~ /manage {
  alias /var/www/mysite/manage/public;
  ...
}
登入後複製

透過這些修改,Nginx 將正確服務根URI 處來自/static 的靜態檔案和「/manage」處來自/ manage 的動態內容。

以上是如何設定 Nginx 來為來自不同 URI 的巢狀子資料夾提供服務?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板