file_get_contents 有时有效,有时无效
file_get_contents sometimes works, sometimes doesn't
我在 Ubuntu 14.04 中使用 Nginx 服务器,我的代码是用 symfony2 编写的。
我有一个简单的 API returns 一个 Json 响应。
我正在尝试通过 file_get_contents:
的另一个页面访问此页面
public function formAction()
$url = 'http://example.com/api/link/';
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
return ($result);
}
但有时有效,有时无效!
我循环查看频率:
它看起来像 63/100 和 250/1000。 (作为平均值)
我在它不起作用时遇到了这个错误:
Warning:
file_get_contents(http://example.com/api/link/):
failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in
/srv/www/path/to/my/file.php
on line 69
当我在 Amazon Web 服务器中重启我的实例时开始出现这种情况,所以我不知道现在是否应该进行一些配置更改。我试过使用 curl 但同样的问题。
更新
如果我尝试在浏览器中访问该页面,它总是可以立即运行。
我发现了它是什么:
在我的 OVH 主机中,我更改了我的 dns 的 ipv4。
但是我没有改ipv6.
所以有时当我尝试访问该站点时,呼叫被重定向到正确的 ip(ipv4 中显示的路径),有时是旧的错误的 ip(ipv6 指示的路径)
我在 Ubuntu 14.04 中使用 Nginx 服务器,我的代码是用 symfony2 编写的。
我有一个简单的 API returns 一个 Json 响应。
我正在尝试通过 file_get_contents:
的另一个页面访问此页面 public function formAction()
$url = 'http://example.com/api/link/';
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
return ($result);
}
但有时有效,有时无效! 我循环查看频率:
它看起来像 63/100 和 250/1000。 (作为平均值)
我在它不起作用时遇到了这个错误:
Warning: file_get_contents(http://example.com/api/link/): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /srv/www/path/to/my/file.php on line 69
当我在 Amazon Web 服务器中重启我的实例时开始出现这种情况,所以我不知道现在是否应该进行一些配置更改。我试过使用 curl 但同样的问题。
更新
如果我尝试在浏览器中访问该页面,它总是可以立即运行。
我发现了它是什么:
在我的 OVH 主机中,我更改了我的 dns 的 ipv4。 但是我没有改ipv6.
所以有时当我尝试访问该站点时,呼叫被重定向到正确的 ip(ipv4 中显示的路径),有时是旧的错误的 ip(ipv6 指示的路径)