我想用curl获取远程文件的信息.问题是其他Web服务器在端口81上.
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt ($ch, CURLOPT_PORT , 81);
curl_setopt($ch, CURLOPT_URL, 'http://98.246.25.185/server_status2.php');
$store = curl_exec ($ch);
echo substr($store, 1);
curl_close ($ch);
?>
Run Code Online (Sandbox Code Playgroud)
正如你所看到它不起作用.
如果在URI中指定端口号会发生什么?
我的意思是首先删除该CURLOPT_PORT行,然后修改CURLOPT_URL一个以添加端口号:
curl_setopt($ch, CURLOPT_URL, 'http://98.246.25.185:81/server_status2.php');
Run Code Online (Sandbox Code Playgroud)
评论后编辑:我刚尝试了这部分代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, true);
//curl_setopt ($ch, CURLOPT_PORT , 81);
curl_setopt($ch, CURLOPT_URL, 'http://98.246.25.185:81/server_status2.php');
$store = curl_exec ($ch);
echo substr($store, 1);
curl_close ($ch);
Run Code Online (Sandbox Code Playgroud)
我得到这个输出:
Online Peak: 59
Online: 17
Distributive server: Online
Agent server: Online
Run Code Online (Sandbox Code Playgroud)
所以,代码似乎没问题.
您确定没有防火墙或任何网络或网络阻止您在端口81上向该服务器发出HTTP请求吗?
当您在浏览器中键入该URI时,它是否有效?