当我们接到一些客户的Discuz论坛的Ucenter无法正常使用,在进入Ucenter后,点击“应用管理”,右边出现通信失败的信息,后来查看源代码,发现是在
UCentermodelmisc.php
这个文件中的dfopen函数有问题,在其中的
$out .= "Host: $host:$portrn";中,使用了:port
比如,www.abc.com,一般使用的是80端口,这里就会变成
Host: www.abc.com:80
本来这些在IIS6下是没有问题的,但是当在IIS7下运行的话,就会出现
The document has moved here.
而不是直接返回1,所以呢,Ucenter就会认为通信失败。
所以当把$out .= "Host: $host:$portrn";改成$out .= "Host: $hostrn";
就没问题了。