du45273117 发表于 2015-7-9 11:45:25

军哥,lnmp1.1如何支持thinkphp的pathinfo模式?

1.2实在用不习惯,继续用1.1
现在问题是thinkphp在lnmp下用不了pathinfo模式,论坛里面的帖子我已经搜索过了,所有办法都试了,还是不行。

1、去掉#include fastcgi.conf的注释,
2、把include pathinfo.conf放到include fastcgi.conf的前面。
3、注释掉#try_files $uri =404;

4、location ~ .*\.(php|php5)?$
                        {
                              fastcgi_passunix:/tmp/php-cgi.sock;
                              fastcgi_index index.php;

                              include fcgi.conf;
                        }
改为
location ~ \.php
                        {
                              try_files $uri =404;
                              fastcgi_passunix:/tmp/php-cgi.sock;
                              fastcgi_index index.php;
                              include fcgi.conf;


                              set $path_info "";
                              set $real_script_name $fastcgi_script_name;
                              if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                              set $real_script_name $1;
                              set $path_info $2;
                              }
                              fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                              fastcgi_param SCRIPT_NAME $real_script_name;
                              fastcgi_param PATH_INFO $path_info;
                        }

都试过了,就是不行。

麻烦军个给个可行的解决办法吧,谢谢

[ 本帖最后由 du45273117 于 2015-7-9 11:48 编辑 ]

licess 发表于 2015-7-9 16:00:40

https://bbs.vpser.net/thread-11621-1-1.html

du45273117 发表于 2015-7-9 17:30:41

回复 2# 的帖子

1、添加pathinfo支持,去掉include pathinfo的#,在try_files前加#,重启nginx————————结果:css和js不能加载
2、添加https://bbs.vpser.net/thread-8876-1-1.html的伪静态,结果显示:


[ 本帖最后由 du45273117 于 2015-7-9 17:32 编辑 ]

licess 发表于 2015-7-10 11:05:11

开源的程序吗,我这边测试过的thinkphp的程序没问题

而且pathinfo和伪静态没法一块用吧

AI的眼神 发表于 2015-7-12 08:52:43

军哥,同样的问题。昨天弄了一晚上也没弄出来。

军哥你说的打开 include pathinfo.conf 的注释。和注释掉 try files的方法我尝试过。但是URL地址变了。变成   域名/.php/Home/Index/login

nxs 发表于 2016-3-31 11:07:58

军哥,我在nginx.conf中没有找到#include pathinfo.conf;
于是我自己添加了一个,到server中,include enable-php.conf;这行的下面,然后重启lnmp,还是404错误

我的lnmp版本是1.2的,用的是thinkphp3.2.2,刚下载的压缩包

nxs 发表于 2016-3-31 11:31:10

军哥,没找到include pathinfo.conf是因为我没有使用域名访问

现在的问题是,如果使用IP访问网站,这个pathinfo该怎么改呢?
复制了有域名的,包含include pathinfo.conf的location这块,到nginx.conf中,也还是不行

licess 发表于 2016-3-31 13:53:13

回复 6# 的帖子

肯定不行
1.2,1.3是include enable-php.conf;替换为include enable-php-pathinfo.conf;
页: [1]
查看完整版本: 军哥,lnmp1.1如何支持thinkphp的pathinfo模式?