Я пытаюсь несколькими способами, прежде чем подумать, чтобы задать этот вопрос здесь .. мне не удалось ... Я пытаюсь декодировать и читать данные с одного сайта, использующего gzip Я использую curl & php. Когда я пытаюсь расшифровать и напечатать результат, я получаю длинный список перевранные специальных символов, таких как:не удалось декодировать gzip с помощью curl php
JHWkdsU01EUXdWa1pXYTFOdFZsZFRiaz
VoVW14S2NGbFljRmRXYkdSWVpFZEdWRT
FYVWtoWmEyaExXVlpLTm1KR1VsWmlXR2
если я запустить ниже PHP скрипт ПРЯМЫЕ ВХ получил ошибку как
PHP Warning: gzdecode(): data error in /var/www/mn.php on line 20
Вот мой текущий код:
<?
$data_string = '9999';
$ch = curl_init('http://example.com/getN.php&keyword=');
curl_setopt($ch, CURLOPT_USERAGENT, 'Darwin/15.0.0');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch,CURLOPT_ENCODING , 'gzip');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_TIMEOUT,5);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); // Follow redirects
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/x-www-form-urlencoded',
'Accept-Encoding: gzip, deflate',
'Content-Length: ' . strlen($data_string))
);
$result = gzdecode (curl_exec($ch));
curl_close($ch);
print_r($result);
?>
Я также пытаюсь включить модуль выкачать по
a2enmod deflate
/etc/init.d/apache2 restart
и включить Zlib из php.ini
либо я пытаюсь проверить его прямо
curl -sH 'Accept-encoding: gzip' http://example.com/getN.php&keyword=9999 | gunzip -
я получил тот же результат и здесь информацию с сайта
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 15 Oct 2015 00:41:54 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Vary: Accept-Encoding
X-Powered-By: PHP/5.4.31
X-Frame-Options: SAMEORIGIN
Content-Encoding: gzip
пожалуйста help
его трудно отлаживать это для вы, поскольку фактические данные из example.com не выглядят gzipped – chiliNUT