使用子文件夹将htaccess转换为nginx重写

时间:2017-08-22 11:39:58

标签: nginx url-rewriting

我在每个子文件夹项目中都有一个带有apache的.htaccess文件。 示例http://www.website.com/projecta/subfolder/.htaccess

使用apache进行重写不是问题,现在使用nginx似乎并不那么明显:

老.htaccess:

RewriteEngine on<br/>
RewriteCond %{REQUEST_FILENAME} !-f<br/>
RewriteCond %{REQUEST_FILENAME} !-d<br/>
RewriteRule ^(.*)$ index.php?rt=$1

我尝试了几个选项,但是他们似乎不接受这个结构:

location / {
    if (!-e $request_filename){
        rewrite ^(.*)$ /index.php?rt=$1 break;
    }
}

备注:每个子文件夹都有一个.htaccess文件,而此配置是全局级别的。我不知道每次如何解析projecta/subfolder/

1 个答案:

答案 0 :(得分:0)

你可以尝试下面的

location / {
   rewrite ^/([^/]+)/([^/]+)/(.*)$ /$1/$2/index.php?rt=$3 break;
}