Nginx重写相当于apache重写
我正在尝试更改新Nginx服务器上的配置,使其与我当前的Apache设置相匹配。 目前我正在使用此htaccess文件:Nginx重写相当于apache重写,apache,.htaccess,mod-rewrite,nginx,Apache,.htaccess,Mod Rewrite,Nginx,我正在尝试更改新Nginx服务器上的配置,使其与我当前的Apache设置相匹配。 目前我正在使用此htaccess文件: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*) index.php?url=$1 [L,QSA] 我已经找到了一个转换器,可以将其转换为Nginx等价物。我尝试了以下方法: location /
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查询时,我的php文件被返回并下载,这是不应该发生的
我期望发生的是,当输入一个类似url的url时,它会被视为
有人能告诉我我做错了什么吗?与Apache不同的是,nginx没有开箱即用地运行PHP。您需要设置一个处理php文件的处理程序,否则nginx将像任何常规文件一样提供这些文件 见:
另外:查看。Hi Jon。谢谢你的回复。我让脚本的下载部分正常工作了。我原来是其他代码中的一个错误。然而,我的重写问题仍然存在remains@madsobelNGINX重写很好,您是否清除了浏览器的缓存?