CURL принудительно загружает веб-страницу в формате gz - PullRequest
1 голос
/ 03 марта 2012

Я запускаю некоторый код PHP в своем браузере.

Если я перехожу по URL-адресу, например google.com, он говорит, что документ переместился сюда.,т. е. на другую ссылку Google.

Я установил cURL для местоположения в true.

Также.Когда запрос действительно проходит, он заставляет мой браузер загрузить веб-страницу в файл .gz .

Пожалуйста, помогите.Я не хочу его скачивать.Я хочу, чтобы он отображался.

curl_setopt($ch, CURLOPT_URL, trim("http://".trim($host).$q)); 
curl_setopt($ch, CURLOPT_PORT, intval(trim($port)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $v);

EDIT ::

Ваш браузер отправил неверный запрос при запросе сайтов, таких как stackoverflow.com.,даже 4shared.com делает то же самое.

Вот массив HTTPHEADER, который я использую в cURL;

Array
(
    [0] => Proxy-Connection: Close

    [1] => Cache-Control: max-age=0

    [2] => User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1017.2 Safari/535.19

    [3] => Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

    [4] => Accept-Encoding: gzip,deflate,sdch

    [5] => Accept-Language: en-US,en;q=0.8

    [6] => Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

    [7] => Cookie: __qca=P0-9

    [8] => Connection: Close
)

Это тот же код скручивания, который я использовал выше.

    Host: stackoverflow.com                                 
    Q: /questions/tagged/java

1 Ответ

2 голосов
/ 03 марта 2012

Для решения проблемы gzip: попробуйте установить CURLOPT_ENCODING в пустую строку перед настройкой CURLOPT_HTTPHEADER.Проблема в том, что cURL не ожидает сжатый ответ (так как вы не установили, какие кодировки он должен принимать), но в любом случае вручную запрашивает сжатый ответ, используя ваши собственные заголовки HTTP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...