3.2.3 - 普通 - 未处理
在CLI模式下U函数生成的带域名链接多了一个点如:
U('Login/index','',true,true);
生成的链接成了http://www.sinlody.com./login/index.html
解决方案
找到 ./ThinkPHP/Common/functions.php 第969行
将
if(isset($route)) {
$url = __APP__.'/'.rtrim($url,$depr);
}else{
$module = (defined('BIND_MODULE') && BIND_MODULE==$module )? '' : $module;
$url = __APP__.'/'.($module?$module.MODULE_PATHINFO_DEPR:'').implode($depr,array_reverse($var));
}
修改成 $appin = $domain && __APP__ == '.' ? '' : __APP__;//兼容CLI模式下生成的带域名链接问题
if(isset($route)) {
//$url = __APP__.'/'.rtrim($url,$depr);//兼容CLI模式下生成的带域名链接问题
$url = $appin.'/'.rtrim($url,$depr);
}else{
$module = (defined('BIND_MODULE') && BIND_MODULE==$module )? '' : $module;
//$url = __APP__.'/'.($module?$module.MODULE_PATHINFO_DEPR:'').implode($depr,array_reverse($var));//兼容CLI模式下生成的带域名链接问题
$url = $appin.'/'.($module?$module.MODULE_PATHINFO_DEPR:'').implode($depr,array_reverse($var));
}