Возможно ли в качестве адреса прокси сервера указать не его ip, а имя домена, вот так например: mydomain.com:80 ?
Спасибо, попробовал, данные в браузер вводятся. Указал адрес своего домена на хостинге, но он мне выдал стартовую страничку Апача. Почему так?
У меня не сервер, а обычный хостинг. Поэтому прокси-сервер у меня на нем наверно не работает, т.к. я его не ставил.
Вообще идея была в том, что на ip хостинга крутится много доменов, поэтому чтобы браузер выбрал именно мой прокси, нужно указать его в браузере по имени домена... Ну вот я браузеру указал домен в качестве прокси, браузер это проглотил и что в результате? Браузер по прежнему пытается соединиться с прокси не по названию домена, а по адресу ip на котором этот домен расположен?
блудный сын о_О Вроде как домен существует только для людей(для удобства восприятия). Браузер обрщается к DNS серверу и получает ip адрес с которым дальше и работает. Так что вводи ты ip или имя домена смысл один и тот же
Это понятно. Жаль что в случае прямого перехода на домен я на домен и попадаю, а в случае если домен прописан в прокси, то на домен я уже не попадаю. Так ведь?
Смотри, что поисходит (некоторые шаги я опущу для наглядности): 1. Браузер получает урл. 2. Браузер знает, что он должен работать через прокси. 3. Браузер соединяется по TCP к прокси. К указанному IP и порту. ЕСЛИ IP не указан, он ищет ИМЯ ПРОКСИ у доступного ДНСа. 4. Браузер обращается к прокси(к его нужному порту, по нужному IP, и все такое), и посылает ему ОБЫЧНЫЙ HTTP ЗАПРОС. С такими же заголовками, всем, какие должны были бы отправится на сайт. 5. Прокси соединяется с нужным сервером, на указанный в урле порт( если не указан = 80) и повторяет ему заголовки, полученные от браузера, забирает ответ, и отдает браузеру. ОЧЕНЬ-ОЧЕНЬ грубо, можно сказать, что технически - для браузера прокси, это один такой-большой-большой сервер, на котором есть все сайты. Что просисходит у тебя: 1. Браузер получает урл. 2. Браузер считает, что должен работать через прокси. 3. Он обращается к тому ip, который нашел по имени. Цепляется на 80 порт. 4. шлет на 80 порт ОБЫЧНЫЙ HTTP ЗАПРОС. Где его получает кто? Апач. И Говорит: о, да, это HTTP запрос. B обабатывает его. И отдает ответ. 5. Браузер получает ответ (якобы от прокси) 6. ??? 7. PROFIT!!!
флоппик, спасибо за разъяснение! Значит я правильно понимаю, что для организации прокси, мне нехватает только выделенного ip на хостинге, а дальше уже можно сделать нечто РНР-прокси?
Тут происходит непонимание принципа работы апача: 0. Браузеру нужно узнать ип сервера по имени сервера. Он спрашивает эти данные у ДНС-сервера. Один из ДНС-серверов говорит ему этот ип по имени. Браузер соединяется к этому ип, на нужный порт. 1. Апач висит на этом ip и порту. Например, 80 по умолчанию. 2. Когда кто либо запрашивает соединение на 80 порт этого ip, данные начинает получать апач. 3. Апач получает весь HTTP запрос. Т.е., грубо говоря, это текст запроса (заголовки) переданный по TCP на 80 порт. 4. Апач разбирает полученный запрос. В частности, ищет заголовок Host: который содержит ИМЯ ЗАПРАШИВАЕМОГО ХОСТА. 5. Апач ищет этот хост в списке своих хостов (реальных, виртуальных). Находит, делает все, что нужно сделать, в описаниях этого хоста, что бы получить результат. (всякие мод-реврайты, запуски цги, пхп, и проч) 6. Отдает результат обратно в это соединение. 7. Браузер отображает результат.
А что же нужно? Вот ты пишешь: Почему же так получается, что мой домен который находится на хостинге, ничего про этот запрос не знает? Т.е. ни до одного моего скрипта этот запрос не доходит?
флоппик, может мне на конкретном примере будет понятней? Вот я прописал в браузере прокси mydomain.com:80 и следую твоему сценарию и ввожу в адресной строке mail.ru, при этом: 3. Апач от браузера получает весь запрос. 4. Апач разбирает полученный заголовок и видит имя моего хоста mydomain.com 5. Апач ищет этот хост среди своих хостов, находит мой хост и ... И вот тут как засада - почему ни к одному из моих скриптов он не направил запрос браузера?