【发布时间】:2014-03-18 18:04:07
【问题描述】:
我有一个奇怪的问题,它可能与 Plesk 相关,也可能不相关。此 PHP 脚本旨在在同一域上执行时获取同一服务器上的页面,例如http://quotationsbook.com/sometestpage.php
<?php
error_reporting('E_ALL');
ini_set('display_errors', 1);
function curlFileGetContents($urlreq) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 50);
curl_setopt($ch, CURLOPT_URL, $urlreq);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$request_result = curl_exec($ch);
if (curl_errno($ch))
$response = 0;
else
$response = $request_result;
curl_close($ch);
return $response;
}
$url = 'http://quotationsbook.com';
$data = curlFileGetContents($url);
echo '<pre>';
print_r($data);
echo '</pre>';
?>
但是,它不获取请求的页面,它总是获取 Plesk 错误页面。
就 PHP var allow_url_fopen 而言,它设置为 On。
该问题仅发生在托管代码的同一域中,而不发生在其他域中。即它只发生在http://quotationsbook.com 上,而我试图获取的内容位于http://quotationsbook.com/* 下,当我尝试获取http://google.com 时不会发生这种情况@
【问题讨论】:
-
错误页面是什么意思?
-
这是我在上面 curl quotationsbook.com 时看到的响应:chopapp.com/#vro2vmck