2015-06-16 68 views
0

我在我的笔记本电脑上安装了一个可在本地和互联网上访问的wamp服务器。域名是educirajse.com,它指向我的IP地址95.180.202.54:81。 http请求通过2个路由器转发到我的本地静态IP地址:192.168.1.130。我的网络服务器可以通过互联网通过浏览器访问,但是当我尝试从另一个网络服务器访问CURL的某些脚本时,我收到错误28-连接超时。 我使用了两个不同的网络服务器,情况是一样的!有趣的是,CURL在WAMP本地工作,例如,我可以通过CURL从我的WAMP Web服务器进行PayPal和Payza付款,但是当我尝试从另一个Web服务器向我的wamp Web服务器发送CURL请求时我总是收到连接超时或无法连接到主机...!我试图禁用防火墙,但无济于事......!以下是一个提取网页的示例脚本,但不幸的是,无法通过我的wamp网络服务器获取我在educirajse.com上托管的网站!它获取所有其他页面,但不是托管在我的wamp Web服务器上的页面,并且错误日志或访问日志中没有任何内容......!WAMP 2.2网络服务器未接收到互联网传入的CURL请求

那么,为什么我的WAMP服务器不接收来自互联网的CURL请求,而是在本地接收它们?

<?php 
$curl = curl_init(); 
curl_setopt ($curl, CURLOPT_URL, "http://educirajse.com:81"); 
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 
curl_setopt($curl, CURLOPT_USERAGENT,"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0 "); 
curl_setopt($curl, CURLOPT_TIMEOUT, 100); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($curl, CURLOPT_VERBOSE,true); 
$res=curl_exec ($curl); 
var_dump(curl_getinfo($curl)) . '<br/>'; 
echo curl_errno($curl) . '<br/>'; 
echo curl_error($curl) . '<br/>'; 
echo $res; 
curl_close ($curl); 
?> 
+0

我敢打赌,防火墙阻止了端口。 81也不是标准的港口。 – Machavity

回答

0

我敢打赌,你的路由器内置了防火墙,或者你没有将端口映射到指向有问题的计算机。

如果是端口映射,那么你将需要登录到您的路由器转发端口81到机器的内部IP要到Web服务器响应请求端口80上

我建议你说明你正在使用什么路由器,以及是否有端口转发设置。一旦我们知道路由器正在运行的路由器和固件版本,我们可以更好地指导您做什么,以便这个问题将成为过去。

80也不是web服务器的默认端口。端口80是默认端口。我仍然建议你看看你的端口转发通过你的路由器。

我个人在家中知道我已经为我的网络服务器设置了一个静态IP,并且我已经将端口80转发给了这个静态IP。

+0

我终于做到了! :)问题不在我的端口转发,也不在我的网络服务器!我的域名指向Godaddy配置的端口81,所以我不必要地将端口81连接到我的域名(educirajse.com:81)......!我只是从我的域名中删除了端口81,并且CURL请求开始被我的wamp网络服务器接收...! :)谢谢@JosephCrawford的帮助......! :) –

+0

是的端口81是不是一个正常的端口,端口80是如此,除非你设置本地服务器,并将其设置为在端口81上听,它不会听到外界的任何东西:)很高兴你的问题解决了。请接受这个答案,如果它是帮助你解决问题的答案。 –

+0

与此相关,我现在面临一个真正奇怪的问题!当我在CURL中使用域名(educirajse.com)时,我无法访问我的服务器,但是当我使用服务器的静态IP地址95.180.202.54:81时,我可以完全访问该PHP脚本... !域名educirajse.com有效,它指向静态IP地址95.180.202.54:81。即使使用上述脚本也会发生同样的情况!任何想法为什么curl不想用我的域名连接到我的web服务器,但它与静态IP地址连接? –

相关问题