slesh
25.03.2007, 19:16
Народ, нужна помощь. Сталкнулся с такой проблемой:
Нужно послать одному сайту запрос через HTTP-proxy.
Сложность заключается в том, что у этого сайта
HOST не соответствует IP, поэтому подключаться нужно по
IP а в поле host ставить нужный хост.
т.е. обычный запрос без прокси осуществлялся бы примерно так:
1) подключение к адресу 111.111.111.111
2) посылка запроса:
GET http://hostname.ru/cgi.exe?param HTTP/1.0
Host: hostname.ru
Вот незнаю как написать запрос, чтобы осуществить такое через прокси.
Т.К из за того что hostname.ru не соответсвует IP, то запросы такого вида не катят:
1)по неизвестным причинам не работает :\
GET http://hostname.ru/cgi.exe?param HTTP/1.1
Host: 111.111.111.111
Proxy-Connection: Keep-Alive
2) сервер подключится к неправильному IP, который будет соответсвовать hostname.ru
GET http://hostname.ru/cgi.exe?param HTTP/1.1
Host: hostname.ru
Proxy-Connection: Keep-Alive
3) не передаст серверу hostname.ru в http заголовке
GET http://111.111.111.111/cgi.exe?param HTTP/1.1
Host: 111.111.111.111
Proxy-Connection: Keep-Alive
4) сервер подключится к неправильному IP, который будет соответсвовать hostname.ru
GET http://111.111.111.111/cgi.exe?param HTTP/1.1
Host: hostname.ru
Proxy-Connection: Keep-Alive
Как вы уже поняли для решения задачи, нужно просто какимто образом заставить прокси отослать запрос вида:
GET http://hostname.ru/cgi.exe?param HTTP/1.0
Host: hostname.ru
на сервекр с адресом 111.111.111.111
Нужно послать одному сайту запрос через HTTP-proxy.
Сложность заключается в том, что у этого сайта
HOST не соответствует IP, поэтому подключаться нужно по
IP а в поле host ставить нужный хост.
т.е. обычный запрос без прокси осуществлялся бы примерно так:
1) подключение к адресу 111.111.111.111
2) посылка запроса:
GET http://hostname.ru/cgi.exe?param HTTP/1.0
Host: hostname.ru
Вот незнаю как написать запрос, чтобы осуществить такое через прокси.
Т.К из за того что hostname.ru не соответсвует IP, то запросы такого вида не катят:
1)по неизвестным причинам не работает :\
GET http://hostname.ru/cgi.exe?param HTTP/1.1
Host: 111.111.111.111
Proxy-Connection: Keep-Alive
2) сервер подключится к неправильному IP, который будет соответсвовать hostname.ru
GET http://hostname.ru/cgi.exe?param HTTP/1.1
Host: hostname.ru
Proxy-Connection: Keep-Alive
3) не передаст серверу hostname.ru в http заголовке
GET http://111.111.111.111/cgi.exe?param HTTP/1.1
Host: 111.111.111.111
Proxy-Connection: Keep-Alive
4) сервер подключится к неправильному IP, который будет соответсвовать hostname.ru
GET http://111.111.111.111/cgi.exe?param HTTP/1.1
Host: hostname.ru
Proxy-Connection: Keep-Alive
Как вы уже поняли для решения задачи, нужно просто какимто образом заставить прокси отослать запрос вида:
GET http://hostname.ru/cgi.exe?param HTTP/1.0
Host: hostname.ru
на сервекр с адресом 111.111.111.111