5

我使用 XAMPP 在端口 80 和端口 81 上本地设置了 2 个 Apache 服务器。我可以通过我的浏览器成功访问它们。目前该 URL 可在以下位置访问

http://27.4.198.225/ncmsl/check.php 

http://27.4.198.225:81/ncmsl/check.php. 

当我尝试为他们编写一个简单的 curl 代码时

$ch=curl_init();                    
$url = "http://27.4.198.225/ncmsl/check.php";
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_URL, $url);
curl_exec($ch);
curl_close($ch);

它适用于端口 80 的服务器,但不适用于端口 81 的服务器,即

$ch=curl_init();                    
$url = "http://27.4.198.225:81/ncmsl/check.php";
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_URL, $url);
curl_exec($ch);
curl_close($ch);

可能的原因是什么?我试过使用 CURLOPT_PORT 但这也不起作用

这些 URL 是 LIVE URL。任何人都可以检查他们是否能够在自己的网络上使用自己的 CURL 代码成功访问它们

4

4 回答 4

7

尝试这个

curl_setopt ($ch, CURLOPT_PORT , 81);

更新代码:-

看到这个网址:- php curl 问题

$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_URL, 'http://27.4.198.225:81/ncmsl/check.php');
$store = curl_exec ($ch);
echo substr($store, 1);
curl_close ($ch);
于 2012-09-06T09:13:26.527 回答
0

尝试这个:

curl_setopt($ch, CURLOPT_PORT, $_SERVER['SERVER_PORT']);
于 2014-11-27T22:48:39.213 回答
0

Take a look at CURLOPT_PORT in the manual for curl_setopt()

于 2012-09-06T09:11:11.210 回答
0

使用这个指定端口,

curl_setopt($ch, CURLOPT_PORT, 81);
于 2012-09-06T09:13:18.290 回答