[英]Nginx rewrite equivalent of apache rewrite
我正在嘗試在新的Nginx服務器上更改配置,使其與我當前的Apache設置匹配。 目前,我正在使用此htaccess文件:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?url=$1 [L,QSA]
我發現了一個可以將其“翻譯”成Nginx等效文件的轉換器。 我嘗試了以下方法:
location / {
if (!-e $request_filename){
rewrite ^/(.*) /index.php?url=$1 break;
}
try_files $uri $uri/ =404;
}
但是,當我嘗試設置像這樣的url查詢http://domain.tld/something時,我的php文件就被返回並下載了,這不應該發生。
當像一個網址我希望發生的是//domain.tld/something:HTTP輸入的它就會像對待HTTP://domain.tld/index.php URL =東西
有人可以告訴我我在做什么錯嗎?
與Apache不同,nginx並非開箱即用即可運行PHP。 您需要設置一個處理程序來處理php文件,否則nginx會像處理任何常規文件一樣為它們提供服務。
請參閱: Nginx下載php而不是運行它
另外:請閱讀有關使用fast-cgi運行php的NGINX文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.