我正在尝试更改新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;
}
但是当我尝试设置像这个http://domain.tld/something这样的url查询时,我的php文件会被返回并下载,而这不应该发生。
我期望发生的是当输入http://domain.tld/something这样的网址时,它会被视为http://domain.tld/index.php?url=something
有人能告诉我我做错了吗?
答案 0 :(得分:0)
与Apache不同,nginx并不是开箱即用的,可以运行PHP。你需要设置一个处理程序来处理php文件,否则nginx将像任何常规文件一样提供它们。