Здравствуй, wasm Пишу тут впервые, ибо несколько лет уже в ридонли. Но просто ответ надо срочно, извините, так уж получилось Решаю задачу по загрузке файла http://php.net/FAQ.php и http://wasm.ru/forum/viewtopic.php?id=10993 но вместо в первом случае получаю Код (Text): HTTP/1.1 302 Found Date: Thu, 02 Sep 2010 23:44:08 GMT Server: Apache/1.3.41 (Unix) PHP/5.2.12RC4-dev X-Powered-By: PHP/5.2.12RC4-dev Content-language: en Set-Cookie: COUNTRY=RUS%2C213.87.195.18; expires=Thu, 09-Sep-2010 23:44:08 GMT; path=/; domain=.php.net X-PHP-Load: 0.95361328125, 1.0859375, 0.994140625 Location: http://ru2.php.net/FAQ.php Connection: close Transfer-Encoding: chunked Content-Type: text/html; charset=utf-8 0 Посылаю на ru2.php.net 2 разных запроса и получаю HTTP 502 ( Плохой шлюз ). с wasm.ru всё нормально. запрос был GET Host: example.com Accept: */* Range: bytes=500-950 \r\n Как правильно прочитать файл FAQ.php?
ну вроде всё правильно, сервер вернул 302 - это редирект, значит переходим на урл из поля Location. Вот затестил вроде работает, возможно дело в каких-то хэдерах которые ты отправляеш. Код (Text): >nc php.net 80 GET /FAQ.php HTTP/1.1 Host: php.net HTTP/1.1 302 Found Date: Fri, 03 Sep 2010 00:47:36 GMT Server: Apache/1.3.41 (Unix) PHP/5.2.12RC4-dev X-Powered-By: PHP/5.2.12RC4-dev Content-language: en Set-Cookie: COUNTRY=UKR%x; expires=Fri, 10-Sep-2010 00:47:36 GMT; path=/; domain=.php.net X-PHP-Load: 0.8056640625, 0.861328125, 0.77734375 Location: http://ua.php.net/FAQ.php Connection: close Transfer-Encoding: chunked Content-Type: text/html; charset=utf-8 0 >nc ua.php.net 80 GET /FAQ.php HTTP/1.1 Host: ua.php.net HTTP/1.1 200 OK Date: Fri, 03 Sep 2010 00:48:24 GMT Server: Apache X-Powered-By: PHP/5.2.8 Content-language: en Set-Cookie: COUNTRY=UKR%x; expires=Fri, 10-Sep-2010 00:48:24 GMT; path=/; domain=.php.net Status: 200 OK Last-Modified: Thu, 02 Sep 2010 01:21:36 GMT Vary: Cookie Link: <http://php.net/>; rel=shorturl Transfer-Encoding: chunked Content-Type: text/html;charset=utf-8 1338 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head profile="http://purl.org/NET/erdf/profile"> ...
Ничё не понял: The requested URL /FAQ.php was not found on this server. Это после твоего nc ua.php.net 80 GET /FAQ.php HTTP/1.1 Host: ua.php.net Я так понял, узел делает редирект, основываясь на IP клиента. То есть у тебя - УКр,, он и директит на UA. Я - УФА, поэтому ua у меня видимо не работает. Но что тогда с ru2?
grouzeene Пробуй так: >nc php.net 80 GET /FAQ.php HTTP/1.1 Host: php.net ../// вывело редиркет на ru2.php.net потом вводишь: >nc ru2.php.net 80 GET /FAQ.php HTTP/1.1 Host: ru2.php.net И все нормально выдается.
И неудивительно. Заголовок "Host" зачастую критичен, особенно для виртуального хостинга. А "Range", наоборот, вполне может игнорироваться сервером. Неплохо бы покурить http://www.ietf.org/rfc/rfc2616.txt на досуге. 8)