问:我的网站有部分网页涉及到获取其他网站的股价、汇率等数据,这些网页访问的时候经常发生断网,
504 Gateway Time-outwts/1.2比如:http://www.richvest.com/index.php?m=other&a=forex这个页面现在就无法访问,但是其他不涉及获取外部网站数据的网页可以正常访问。请告诉我这究竟是怎么回事?你们对访问外部数据有什么限制政策?具体限制是怎么样的?比如每分钟可以获取几个外部数据?获取太频繁就会封掉?那么限制频率到底是每分钟多少?能否放宽限制?如果再这样,我只好考虑换空间了!!!,获取外部网站数据的网页老是被封为何?
答:您好,我司主机没有这方面的限制, 只要您的程序优化好, 不会导致很高的负载, 就不会有任何问题, 目前服务器负载 和 web服务 都是正常的, 出现504错误 是因为您的程序卡死的原因, 请自行检查一下程序, 在出现问题的时候, 1. 您可以测试一下 http://www.richvest.com/x.php, 如果这个页面能够正常访问 可以说明 web 环境(php) 没有异常, 2. 虚拟主机管理 -> 管理 -> 数据库 -> 管理mysql数据库, 可以检查mysql服务是否正常,非常感谢您长期对我司的支持!
问:你好,我在根目录建了一个测试文件如下:
http://www.richvest.com/test.php
全部内容如下,就这样一个测试文件现在都无法访问,这怎么可能是我的程序卡死呢,肯定是你们服务器方面的问题,请帮忙检查:
<?php
$url = "http://hq.sinajs.cn/list=,sh600036";
$ch = curl_init();
$timeout = 0;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT , "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$rawdata = curl_exec($ch);
curl_close($ch);
echo $rawdata;
?>
答:您好,, 测试访问这个地址没有问题, 使用curl的时候 CURLOPT_CONNECTTIMEOUT 最好不要设置为0, 推荐10s, 如果"hq.sinajs.cn" 这个服务器响应慢 网络不通 或者 或者做了频率限制, 就会无限等待 导致整个程序挂起,非常感谢您长期对我司的支持!
问:你这个说法不可能是对的,因为我同样的程序在本地运行的时候,从不会出现这个问题,如果是"hq.sinajs.cn" 这个服务器响应慢 网络不通 或者 或者做了频率限制, 为何它就限制你们的虚拟主机,不限制我的本地电脑呢??不过,我还是按照你的方法改为10s,试了一下,问题依旧,你认为问题在哪里?
答:您好,
1. 在问题的时候您可以将"hq.sinajs.cn" 换成 "www.baidu.com" 试试
2. 如果通过排查程序, 查到是由于curl 阻塞导致的, 可以 设置 CURLOPT_TIMEOUT 为 10s 再试试
,非常感谢您长期对我司的支持!