2016-01-11 2 views
2

Я хочу знать, как извлечь изображение сайта, когда у вас есть ошибка «Ошибка HTTP-запроса? HTTP/1.1 463»? Сайт для блокировки всех запросов PHP, но он не делает всех интернет-серверов.Как не удалось выполнить запрос HTTP! HTTP/1.1 463?

Я протестировал сценарий на серверах One.com, которые работали, но он не работает нигде. Я получаю ошибку 463, если быть точным: «HTTP-запрос не прошел HTTP/1.1 463».

Вот сценарий:

<?php 
header("Content-type: image/gif"); 

$habbo = $_GET['habbo']; // Habbo 
$habbo2 = $_GET['habbo2']; // Habbo N°2 
$habbo3 = $_GET['habbo3']; // Habbo N°3 
$pays = $_GET['pays']; // Pays 

$image = imagecreatefromgif("bureau_behind.gif"); // Bureau 

$avatar = imagecreatefromgif("https://www.habbo.".$pays."/habbo-imaging/avatarimage?user=".$habbo3."&action=sit&direction=2&head_direction=2&gesture=sml&size=b&img_format=gif"); 
imagecopy($image, $avatar, 78, -16, 0, 0, 64, 110); // Lien Habbo 
$avatar = imagecreatefromgif("https://www.habbo.".$pays."/habbo-imaging/avatarimage?user=".$habbo2."&action=sit&direction=2&head_direction=2&gesture=sml&size=b&img_format=gif"); 
imagecopy($image, $avatar, 48, -2, 0, 0, 64, 110); // Lien Habbo n°2 
$avatar = imagecreatefromgif("https://www.habbo.".$pays."/habbo-imaging/avatarimage?user=".$habbo."&action=sit&direction=2&head_direction=2&gesture=sml&size=b&img_format=gif"); 
imagecopy($image, $avatar, 20, 10, 0, 0, 64, 110); // Lien Habbo n°3 

$bureau = imagecreatefromgif("bureau_before.gif"); // Bureau image 
imagecopy($image, $bureau, 0, 0, 0, 0, 300, 200); // Composition image 

imagegif($image); 
imagedestroy($image); 
?> 

Спасибо заранее,

+1

показать код, в противном случае никто не сможет помочь – thst

+0

У меня есть обновленное сообщение, спасибо! – Aymeric98

ответ

3

Я попытался URL вы строите, кроме ситуации с правами возможно проблематичной, если вы не имеете права на Habbo использовать свои графики, код 463 не происходит с обычным браузером.

Код 463 является нестандартным кодом. Возможно, habbo фильтрует ваш запрос по строке пользовательского агента. Вы можете попробовать GET снова, используя другой идентификатор агента пользователя в скрипте:

$httpRequest->setHeaders(array('User-Agent' => 'Mozilla/1.22 (compatible; MSIE 5.01; PalmOS 3.0) EudoraWeb 2')); 

или что-то подобное (см их все http://www.useragentstring.com/). Я привел этот пример прямо из документации php: http://php.net/manual/de/httprequest.setheaders.php