码迷,mamicode.com
首页 > Web开发 > 详细

修改Nginx解决ThinkPHP不支持PathInfo模式

时间:2017-12-28 16:07:01      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:post   test   配置   params   模式   one   document   home   字符   

 

最精简的Nginx配置

 

server {
        listen       80;
        server_name  test.com;
        charset utf-8;

        location / {
            root   E:/WWW/test;
            index  index.php;
            
            if (!-e $request_filename) {
                #一定要用(.*)匹配整个URI,包含URI第一个字符反斜杠/
                #rewrite ^(.*)$ /index.php?s=$1 last;
                rewrite  ^/(.*)index.php(.*)$  $1/index.php?s=$2  last; 
                break;
            }
        }

        location ~ \.php$ {
            root           E:/WWW/test;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache‘s document root
        # concurs with nginx‘s one
        #
        location ~ /\.ht {
            deny  all;
        }
    }

关键就是,高级版的:

rewrite  ^/(.*)index.php(.*)$  $1/index.php?s=$2  last; 

1、精简版的:PathInfo模式http://test.com/index.php/home/wendang/index,会报错无法找到模板index.php,其他正常

2、高级版的:貌似这种,兼容模式http://test.com/home/wendang/index,会出现Not Found,其他正常

 

参考:nginx解决ThinkPHP PATHINFO不支持问题

 

修改Nginx解决ThinkPHP不支持PathInfo模式

标签:post   test   配置   params   模式   one   document   home   字符   

原文地址:https://www.cnblogs.com/sanplit/p/8135708.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!