让子域名支持带端口号的形式

jerry thinkphp 2015年11月19日 收藏
目前当我们的域名后需要携带端口号进行访问时,子域名部署不会传递端口号。
目前当我们的域名后需要携带端口号进行访问时,子域名部署不会传递端口号。
解决方案:
找到ThinkPHP/Common/functions.php第878行
        $domain = $key.(preg_match('/\.(cn|com|org|net|cc)$/i',$key)?'':strstr($domain,'.')); // 生成对应子域名
修改为
        list($key,$port) = explode(':',$key);
        $domain = $key.(preg_match('/\.(cn|com|org|net|cc)$/i',$key)?'':strstr($domain,'.')).($port?':'.$port:''); // 生成对应子域名,兼容带端口号的子域名