yadgen 发表于 2015-4-21 23:25:24

2.2的升级3.0,本地域名命名需注意

本帖最后由 yadgen 于 2015-4-22 08:49 编辑

例域名是:local.aaa_bbb.com
system/core/Config.php,93行,代码如下:

if (isset($_SERVER['HTTP_HOST']) && preg_match('/^((\[+\])|(\d{1,3}(\.\d{1,3}){3})|+)(:\d+)?$/i', $_SERVER['HTTP_HOST']))

这里判断始终为FALSE,导致返回的$base_url = 'localhost';3.0在域名判断上严谨了。

因为2.2的判断规则是:

if (isset($_SERVER['HTTP_HOST']))

燃雲 发表于 2015-4-22 10:10:47

问题在于aaa_bbb.com并非容许的Internet Domain名字。'_'出了问题!

参看preg_match码,'_'不在其中,当然是false。

算是谁的bug?

yadgen 发表于 2015-4-23 13:15:25

燃雲 发表于 2015-4-22 10:10
问题在于aaa_bbb.com并非容许的Internet Domain名字。'_'出了问题!

参看preg_match码,'_'不在其中,当然 ...

后面修改了问题类型,不算框架bug。
在实际情况中,因为团队人多,你不知道你的开发人员会用什么样的域名本地化,我遇见到了这个问题,就看了下。
页: [1]
查看完整版本: 2.2的升级3.0,本地域名命名需注意