Php Fsockopen由服务器本身启动时不工作

Php Fsockopen由服务器本身启动时不工作,php,yii,cgi,yii-extensions,fsockopen,Php,Yii,Cgi,Yii Extensions,Fsockopen,我使用一个名为ERunActions的Yii扩展来运行后台进程,例如向用户发送邮件。此扩展在内部使用fsockopen来完成此任务。在开发中一切都很好,但在服务器中使用fsockopen会将我重定向到 我在php.net中阅读了fsockopen的文档- 并在我的开发环境中运行了以下代码(我用我的站点URL替换了example.com),一切正常&显示了我主页的HTML内容,但当我在服务器中运行相同的代码时,我会被重定向到cgi URL。任何帮助都将不胜感激,谢谢 <?php $fp =

我使用一个名为ERunActions的Yii扩展来运行后台进程,例如向用户发送邮件。此扩展在内部使用fsockopen来完成此任务。在开发中一切都很好,但在服务器中使用fsockopen会将我重定向到

我在php.net中阅读了fsockopen的文档- 并在我的开发环境中运行了以下代码(我用我的站点URL替换了example.com),一切正常&显示了我主页的HTML内容,但当我在服务器中运行相同的代码时,我会被重定向到cgi URL。任何帮助都将不胜感激,谢谢

<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>

您能再多介绍一下您的生产服务器吗?特别是给定web位置的web服务器类型和配置将非常有用。还可以查看web服务器日志,查看访问日志中记录了哪些事件,例如,如果您找到了301、302或307。生产服务器与开发服务器相同,它是一个VPS,但不知道这是否与此相关,301、302是指HTTP代码吗?确切地说,查看access.log,了解在发出fsockopen()调用时记录的是哪种HTTP状态代码。
HTTP/1.1 200 OK Date: Wed, 27 Nov 2013 11:25:17 GMT Server: Apache/2.2.25 (Unix) mod_ssl/2.2.25 OpenSSL/1.0.0-fips mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Last-Modified: Mon, 02 Sep 2013 10:19:00 GMT ETag: "43bdf-6f-4e563e69a0d03" Accept-Ranges: bytes Content-Length: 111 Connection: close Content-Type: text/html