Как скопировать картинку на localhost из за PROXY

  • Автор темы Автор темы Sandr
  • Дата начала Дата начала
а как ты скажешь сору(), что нужно через прокси ходить?
 
хорошо - не скажу
тогда просто помоги написать правильно функцию !
 
Первоначальные HTTP/1.1 сервера ДОЛЖНЫ учитывать, что точный
ресурс, идентифицированный интернет-запросом определяется
исследованием как Request-URI, так и поля заголовка Host.

Первоначальный сервер, который не позволяет ресурсам отличаться по
запрошенному хосту (host), МОЖЕТ игнорировать значение поля
заголовка Host.

Первоначальный сервер, который различает ресурсы, основанные на
запрошенном хосте (иногда называемые виртуальными хостами или
vanity hostnames) ДОЛЖЕН использовать следующие правила для
определения запрошенного в HTTP/1.1 запросе ресурса:

1. Если Request-URI - это absoluteURI, то хост - это часть
Request-URI. Любое значение поля заголовка Host в запросе
ДОЛЖНО игнорироваться.

2. Если Request-URI - не absoluteURI, а запрос содержит поле
заголовка Host, то хост определяется значением поля
заголовка Host.

3. Если хоста, определенного правилами 1 или 2 не существует на
сервере, код состояния ответа ДОЛЖЕН быть 400 (Испорченный
Запрос, Bad Request).
Как я понимаю Должно игнорироваться)) но не всегда игнорируеться) т.е. зависит от сервака

-~{}~ 22.06.05 13:24:

Это просто из-за прокси сервера. прямой запрос проходит и с любым значением host
 
начать надо было с того, что в 'HTTP 1.0' (rfc1945), нет никакого "Host:"
 
так ?
PHP:
$url="GET $proxy_url HTTP/1.0\r\nHost: $proxy_name\r\nContent-Type: image/jpg\r\nContent-Transfer-Encoding: binary\r\n";
 
во-первых, я приношу свои извинения Tor и Sandr.
во-вторых, какой, всё-таки, адрес у прокси-сервера - 194.67.2.155 или 192.168.0.101 ?
в-третьих, не может ли быть проблема в том, что протокол указывается HTTP/1.0 ,а не 1.1?
 
запрос[q]GET http://images.amazon.com/images/P/630294905X.01.LZZZZZZZ.jpg HTTP/1.1 Host: 192.168.0.101 [/q]
ответ
[q]
HTTP/1.0 400 Bad Request Server: AkamaiGHost Mime-Version: 1.0 Content-Type: text/html Content-Length: 187 Expires: Wed, 22 Jun 2005 09:43:42 GMT Date: Wed, 22 Jun 2005 09:43:42 GMT Connection: close
Invalid URL
The requested URL "/images/P/630294905X.01.LZZZZZZZ.jpg", is invalid.[/q]

-~{}~ 22.06.05 13:45:

Автор оригинала: Фанат
отлично, а первый адрес - это что?
то был пример взятый для поста!
(пробовал раньше и код не сохранился - позже написал заново)
 
GET /images/P/630294905X.01.LZZZZZZZ.jpg HTTP/1.1 Host: 192.168.0.101

так пробовал?
 
Tor вот так как раз будет неправильно.
на прокси сервере нет веб-сервера с ури /images/P/630294905X.01.LZZZZZZZ.jpg
писать надо как раз aboluteURI, а я этого не знал
 
Фанат
почему не правильно?
насколько понятно из rfc, такое должно работать
а уж попробовать так точно ничего не мешает
 
так хост тогда надо указывать внешений.
а строка GET /images/P/630294905X.01.LZZZZZZZ.jpg HTTP/1.1 Host: 192.168.0.101
не имеет смысла.
как прокси сервер на адресе 192.168.0.101 узнает, с какого хоста брать /images/P/630294905X.01.LZZZZZZZ.jpg ?
 
PHP:
    $fp = fsockopen($proxy_name, $proxy_port) or die("Can't");
    if ($fp) { echo('Conncted'); }

    $url="GET 'http://images.amazon.com/images/P/630294905X.01.LZZZZZZZ.jpg' HTTP/1.1\r\nHost: images.amazon.com\r\nContent-Transfer-Encoding: binary\r\n\r\n";
    fputs($fp,$url);

HTTP/1.1 200 OK Server: Apache Last-Modified: Thu, 01 Jan 1970 00:16:22 GMT Content-Type: image/gif Content-Length: 807 X-Junk: xxx Date: Wed, 22 Jun 2005 10:21:58 GMT Connection: close GIF89a



A почему GIF и файл все равно 1003 байта а исходник 36кб

-~{}~ 22.06.05 14:26:

а вот - Content-Length: 807

-~{}~ 22.06.05 14:48:

ну что нет умных людей ?
 
Сверху