nginx重写不以.php扩展名结尾

时间:2015-11-14 15:30:39

标签: php .htaccess nginx url-rewriting

我正在使用nginx来重写像 http://www.sample.com/applicationhttp://www.sample.com/index.php/application

重写规则是

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

我的fastcgi配置是

location ~ \index.php {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }

但改写规则不起作用 我浏览http://www.sample.com/index.php/application也不起作用 /application没有传递给index.php

它出了什么问题?

1 个答案:

答案 0 :(得分:0)

如果您<div ng-repeat="movie in movies | filter {email:'user@email.com'}"> 规则break,则位置上下文保持不变。您需要使用rewrite而不是last,以便最终找到 fastcgi 位置。

此外,您的正则表达式规则中有一个冗余反斜杠。应该是:

break