我有一個網站,我需要從Apache服務器移動到Nginx服務器。Nginx重寫規則/ try_files不能一起工作
本網站的.htaccess文件如下:
RewriteEngine on
RewriteRule ^([^/\.]+)/?$ $1.php [L]
這重定向到www.example.com/hello保持www.example.com/hello.php原始鏈接,但omiting帶.php從網址的末尾開始。
我想在我的Nginx服務器塊複製這個..
location/{
# Check if a file exists, or route it to index.php.
try_files $uri $uri/ /index.php;
}
rewrite ^/([a-z]+)$ /$1.php last;
重寫規則運作,所有重定向鏈接到PHP文件,但打破了Nginx的try_files規則,如果一個目錄內搜索文件不存在。
下面的管理示例鏈接是一個其中包含index.php文件的文件夾。
www.example.com/admin
的try_files應該重定向這..
www.example.com/admin/
由於沒有叫admin.php的文件。相反,我得到'沒有指定輸入文件'的消息。
當我刪除重寫,try_files工作正常。但是,如果沒有這個重寫規則,網站的其他部分就無法工作。
有誰知道我怎麼能得到try_files和重寫一起工作?
感謝
本