Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nginx重写相当于apache重写_Apache_.htaccess_Mod Rewrite_Nginx - Fatal编程技术网

Nginx重写相当于apache重写

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 /

我正在尝试更改新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查询时,我的php文件被返回并下载,这是不应该发生的

我期望发生的是,当输入一个类似url的url时,它会被视为


有人能告诉我我做错了什么吗?

与Apache不同的是,nginx没有开箱即用地运行PHP。您需要设置一个处理php文件的处理程序,否则nginx将像任何常规文件一样提供这些文件

见:


另外:查看。

Hi Jon。谢谢你的回复。我让脚本的下载部分正常工作了。我原来是其他代码中的一个错误。然而,我的重写问题仍然存在remains@madsobelNGINX重写很好,您是否清除了浏览器的缓存?