thinkphp U方法生成链接没有host

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp U方法生成链接没有host相关的知识,希望对你有一定的参考价值。

今天将自己代码传到线上服务器,页面上用到很多thinkphp U() 方法生成的链接。本地测试没啥问题,到线上发现链接生成的不对,每个都没有了host

每个链接多个index,然后查看tp的U方法:


$url    =   __APP__.‘/‘.($module?$module.MODULE_PATHINFO_DEPR:‘‘).implode($depr,array_reverse($var));

是因为__APP__这里的原因,然后找到__APP__赋值的地方:

define(‘__APP__‘,strip_tags(PHP_FILE));

和PHP_FILE有关,继续找    

  = (,$_SERVER[]);
(,    (($_SERVER[],,[].),));

最后发现和$_SERVER["PHP_SELF"]有关系,这里问题基本锁定了,最后搜了下,这个值和php.ini的

cgi.fix_pathinfo配置有关系,把cgi.fix_pathinfo=1设置成0就OK了!U方法就正常了

本文出自 “7804265” 博客,请务必保留此出处http://7814265.blog.51cto.com/7804265/1953673

以上是关于thinkphp U方法生成链接没有host的主要内容,如果未能解决你的问题,请参考以下文章

ThinkPHP函数详解:U方法

ThinkPHP URL 路由功能详解与实例

ThinkPHP - URL生成(U函数)

thinkphp url生成

thinkphp如何生成条形码?

根据对象列表生成新卡片