Php 文件\u获取\u内容:连接被拒绝

Php 文件\u获取\u内容:连接被拒绝,php,file-get-contents,Php,File Get Contents,我有以下代码,在我的计算机上运行良好,但联机失败: <?PHP header("Content-Type: text/plain"); $username = "username"; $password = "password"; $url = "http://s6.voscast.com:7158/admin.cgi?mode=viewxml"; $context = stream_context_create(array( '

我有以下代码,在我的计算机上运行良好,但联机失败:

<?PHP
    header("Content-Type: text/plain");

    $username = "username";
    $password = "password";
    $url = "http://s6.voscast.com:7158/admin.cgi?mode=viewxml";

    $context = stream_context_create(array(
        'http' => array (
            'method' => "GET",
            'header' => "Authorization: Basic ".base64_encode($username.":".$password)."\r\n".
                        "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.1 (KHTML, like Gecko) Ubuntu/11.04 Chromium/14.0.835.202 Chrome/14.0.835.202 Safari/535.1"
        )
    ));

    print file_get_contents($url, false, $context);
?>

这完全适用于本地;我能够获得HTTP基本身份验证背后的URL并将其打印出来

但是,当我将其上传到服务器时,它不工作,并将其吐出:

<br />
<b>Warning</b>:  file_get_contents(http://s6.voscast.com:7158/admin.cgi?mode=viewxml) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: Connection refused in <b>/home/livshin/public_html/wp-content/uploads/_radio/songinfo.php</b> on line <b>16</b><br />

警告:文件\u获取\u内容(http://s6.voscast.com:7158/admin.cgi?mode=viewxml)[]:无法打开流:第16行的/home/livshin/public_html/wp content/uploads/_radio/songinfo.php中的连接被拒绝
有没有一种方法可以让我得到关于这个或什么的堆栈跟踪,至少可以让我更好地了解出了什么问题


*我已经测试过了,以确保像
file\u这样的东西能够获取内容(“http://google.com/“”
在服务器上工作

您的服务器可能不允许在端口7158上进行传出连接。谷歌位于80端口,工作正常。您可能需要更改防火墙。

您的服务器可能不允许在端口7158上进行传出连接。谷歌位于80端口,工作正常。您可能需要更改防火墙。

您的服务器可能不允许在端口7158上进行传出连接。谷歌位于80端口,工作正常。你能改变防火墙吗?最好的办法是“堆栈跟踪”,这是在你的服务器上使用网络监视器,观察与该服务器的连接情况。您可以尝试将标题设置为数组(而不是带有
“\r\n”
)的字符串)。根据内部注册的
http://
streamwrapper,这可能会有所不同。但这不能保证有效。您是否具有服务器(shell)的SSH访问权限?也许通过命令行上的
curl-v
,你会得到更多信息,尤其是minitech评论的那部分。@minitech听起来确实有问题。刚刚请求SSH访问。@minitech请用上面的评论创建一个答案,我会给您正确的答案。您的服务器可能不允许在端口7158上进行传出连接。谷歌位于80端口,工作正常。你能改变防火墙吗?最好的办法是“堆栈跟踪”,这是在你的服务器上使用网络监视器,观察与该服务器的连接情况。您可以尝试将标题设置为数组(而不是带有
“\r\n”
)的字符串)。根据内部注册的
http://
streamwrapper,这可能会有所不同。但这不能保证有效。您是否具有服务器(shell)的SSH访问权限?也许通过命令行上的
curl-v
,你会得到更多信息,尤其是minitech评论的那部分。@minitech听起来确实有问题。刚刚请求SSH访问。@minitech请在上面的评论中创建一个答案,我将奖励您正确的答案。