如何配置nginx来重写对bootstrap php文件的所有请求

时间:2015-04-01 17:14:39

标签: php apache nginx rewrite

我计划从apache迁移到nginx,但是这些重写内容不断拖累我。真郁闷!

在apache .htaccess中,我有这一行做正确的事情:

RewriteRule .* index.php/$0 [PT,L]

这意味着:

http://example.com/a/b/c/d

将被重写为:

http://example.com/index.php/a/b/c/d

当我走进nginx时,我对conf中的这一行代码的期望与此相同:

rewrite ^(.*) /index.php/$1     last;

但它一直给我404页面?!

2 个答案:

答案 0 :(得分:0)

确实是一行代码:

try_files $uri $uri/ /index.php?$args;

答案 1 :(得分:0)

您可以使用以下解决方案将Nginx配置为将所有请求重写为Bootstrap PHP文件:

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