nginx 完美解决tp3.2.3 404问题

最近我把Apache给换成nginx,当我把tp项目搬过去运行的时候发现404 错误 ,原来是因为nginx不支持 pathinfo 模式,需要自己配置

下面我配置
在server配置里面

location / {
        #root html
        index index.html index.htm index.php ;
        if (!-e $request_filename) {  
        rewrite ^/test/tp/(.*)$ /test/tp/index.php/$1 last;
        break;  
}         
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_index index.php?IF_REWRITE=1;
    include fastcgi_params;
    fastcgi_param PATH_INFO $path_info;
    fastcgi_param SCRIPT_FILENAME $document_root/$script;
    fastcgi_param SCRIPT_NAME $script;
}

保存配置之后,重启 nginx ,配置成功
直接支持类似于 /Index.html 这样的伪静态模式

原文地址:https://www.cnblogs.com/jjxhp/p/12909931.html