我试图打开一个https网站,在PHP中使用curl。但我得到一个空白页面

时间:2012-06-24 05:06:08

标签: php curl

我正在尝试使用php中的curl打开https网站。但是我得到一个空白页面。虽然我检查过,但我发现返回的httpcode是200.我可以使用浏览器打开同一页面。我已经废除了ssl verifyer和ssl_verify主机,因为主机名和certifcate中的名称不同。

这是我的代码,任何帮助都是有用的

<?php
$url = "https://abcde.com/";
$ch = curl_init($url);
echo "init";
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 200);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_USERPWD,"uname:pwd");
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,1);
$curl_scraped_page= curl_exec($ch);
$httpCode=curl_getinfo($ch, CURLINFO_HTTP_CODE); 
if(!$curl_scraped_page)
{
    echo "first learn";
}
echo $httpCode ;
echo $curl_scraped_page;
curl_close($ch);
?>

2 个答案:

答案 0 :(得分:2)

尝试使用CURLOPT_USERAGENT将用户代理设置为浏览器使用的代理。他们可能正在使用用户代理嗅探。

答案 1 :(得分:0)

设置此选项:

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);