命令行模式不经过APP Server,所以$_SERVER参数只是返回一个正常HTTP请求的子集。
其中HTTP_HOST就没有填写。如果你的程序需要在cron job中运行,那么就需要为命令行进行特殊处理。
if(defined('STDIN'))
{
//hardcodethebaseurlforcli
$config['base_url']="http://yoursite.com/";
}
else
{
$config['base_url']="http".((isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']=="on")?"s":"")."://".$_SERVER['HTTP_HOST'].str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
}
regards,
iefreer