2012-06-14 14 views
9

Korzystam z następującego kodu, który działa dobrze dla innych adresów URL, jednak dla adresu URL "http://lisakifttherapy.com/", jestem źle robi, pokazując wiele danych gerbage . Czy ktoś ma pojęcie, dlaczego tak się dzieje i jak tego dokonać? Z góry dziękuję.cURL zwrócenie śmieci dane

 $curlObj = curl_init(); 
     curl_setopt($curlObj, CURLOPT_URL, "http://lisakifttherapy.com/"); 
     curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, true); 
     curl_setopt($curlObj, CURLOPT_FOLLOWLOCATION, true); 
     $content = curl_exec($curlObj); 
     echo $content; 

Odpowiedz

18

Nagłówki pokazać go:

TTP/1.1 200 OK 
Date: Thu, 14 Jun 2012 14:25:49 GMT 
Server: Apache 
Vary: Accept-Encoding,Cookie 
Cache-Control: max-age=3, must-revalidate 
WP-Super-Cache: Served supercache file from PHP 
Content-Encoding: gzip 
Content-Length: 16502 
Connection: close 
Content-Type: text/html; charset=UTF-8 

Więc widać gzip „dane ED, który nie jest czytelny dla człowieka.

Edit

Od komentarz poniżej: Aby pokonać ten problem, należy użyć nagłówka Accept-Encoding: identity, co można uzyskać przez

curl_setopt($curlObj, CURLOPT_ENCODING, 'identity'); 
+2

dwa sposoby rozwiązania problemu: po pierwsze, wysłać nagłówek mówi że nie obsługujesz GZIP. Po drugie, dekoduj ciąg do zwykłych danych. –