Nginx重写"未指定输入文件#34;

时间:2014-11-13 06:49:54

标签: php nginx url-rewriting

最近我使用nginx,但我有重写问题。 当我去原始网址没有问题,当我使用重写的网址并且没有* .php时没有问题。但是当我使用带有php文件的重写URL时,我得到错误:没有指定输入文件。 我认为重写的URL会转到php,php无法找到它,因为它是重写的而不是真实的文件。

这是我的重写规则:

  

位置/文件夹{

  if (!-e $request_filename){
  rewrite ^/folder\/.*?\/(.*) /folder/$1 break;

  }
     

}

1 个答案:

答案 0 :(得分:0)

您可以通过使用不同的位置路径来简化此操作,然后您可以完全避免使用if语句。

这是未经测试的,可能需要进行一些调整,但一般的想法应该是明确的

location ~ /folder\/.*?\/(.*).php$ {
    rewrite ^ /folder/$1 permanent;
}