0
這裏是我的nginx.conf:重寫所有的請求到index.php,除/靜態/目錄
if ($host ~ "^example.com$") {
rewrite . /index.php last;
}
如何請問nginx的服務內/靜態/目錄下的文件而無需重寫URL?
這裏是我的nginx.conf:重寫所有的請求到index.php,除/靜態/目錄
if ($host ~ "^example.com$") {
rewrite . /index.php last;
}
如何請問nginx的服務內/靜態/目錄下的文件而無需重寫URL?
不確定爲什麼要測試$host
的值。區分主機名的常用方法是使用多個服務器塊。有關詳細信息,請參見this document。
的try_files
指令用於檢查一個靜態文件的存在,然後再推遲到默認的行動,如果它不存在:
server {
...
root ...;
location/{
try_files $uri $uri/ /index.php;
}
location ~ \.php$ { ... }
}
這對於任何有靜態文件的工作(不只是那些在/static
目錄中)。詳情請參閱this document。
但是,如果你特別希望/static
目錄進行不同處理,使用前綴位置與^~
修改:
location ^~ /static { }