CLI获取不到HTTP_HOST的解决方法

命令行模式不经过APP Server,所以$_SERVER参数只是返回一个正常HTTP请求的子集。
其中HTTP_HOST就没有填写。如果你的程序需要在cron job中运行,那么就需要为命令行进行特殊处理。

if (
defined('STDIN'))
{
   
//hardcode the base url for cli
   
$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

你可能感兴趣的:(CLI获取不到HTTP_HOST的解决方法)