簡體   English   中英

卷曲返回“來自服務器的空回復”

[英]Curl return 'Empty reply from server'

我需要從服務器中提取HTTPS頁面,並使用cURL打印錯誤“來自服務器的空回復”。 這是我的代碼:

<?php
$ch = curl_init();
$headers = array('HTTP_ACCEPT: Something', 'HTTP_ACCEPT_LANGUAGE: fr, en, da, nl, it', 'HTTP_CONNECTION: Something');
curl_setopt($ch, CURLOPT_URL, 'https://gibbohotel.it/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec( $ch );
if(curl_exec($ch) === false)
{
    echo 'Curl error: ' . curl_error($ch);
}
else
{
    echo 'Operation completed without any errors';
}
curl_close($ch);
?>

它是外部服務器的代理問題嗎?

該特定站點拒絕curl查詢-命令行查詢返回相同的結果。 因此,您必須假裝將其他用戶代理與CURLOPT_USERAGENT一起使用

<?php
$ch = curl_init();
$headers = array('HTTP_ACCEPT: Something', 'HTTP_ACCEPT_LANGUAGE: fr, en, da, nl, it', 'HTTP_CONNECTION: Something');
curl_setopt($ch, CURLOPT_URL, 'https://gibbohotel.it/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
$result = curl_exec( $ch );
if(curl_exec($ch) === false)
{
    echo 'Curl error: ' . curl_error($ch);
}
else
{
    echo 'Operation completed without any errors';
}
curl_close($ch);
?>

但是,此站點可能有沒有通過卷發或類似方式收割的原因,因此請不要抱怨,如果這樣做,則會被阻止...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM