从apache迁移到nginx遇到的几个问题的解决

1、nginx下设置支持ssi
在apache中SSI(Server Side Includes),需要在Directory容器中加入以下指令:
Options +Includes
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

在nginx下设置ssi:
在server中加入ssi on就可以了。

2、nginx下对PATH_INFO的设置

当遇到请求URL为:http://site/test.php/more-66,2.html nginx会报404错误,需要我们对nginx进行设置,将此类请求传递给php-cgi来处理,设置正确的SCRIPT_NAME和PATH_INFO。
匹配请求的URL:
location ~ \.php(/)
加入如下的指定:
        set $script     $uri;
        set $path_info  "";
        if ($uri ~ "^(.+\.php)(/.+)") {
            set $script     $1;
            set $path_info  $2;
        }
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  SCRIPT_NAME        $script;
        fastcgi_param  PATH_INFO          $path_info;

你可能感兴趣的:(apache,html,PHP,nginx,cgi)