Перенаправить localhost через прокси? - PullRequest
8 голосов
/ 06 июня 2009

HTTP-прокси работает на локальном хосте: 1234. Прокси работает нормально для всех веб-запросов, которые я делаю.

У меня работает сервер на локальном хосте: 4567. Я хочу, чтобы HTTP-запросы к моему серверу проходили через мой прокси. Должно быть просто, верно? Есть ли способ заставить IE или любой другой браузер сделать это?

Ответы [ 4 ]

7 голосов
/ 06 июня 2009

Как правило, вы можете настроить параметры браузера для этого. В Firefox это Настройки -> Дополнительно -> Сеть -> Соединение (Настройки).

IE автоматически игнорирует прокси, если обнаруживает локальный URL-адрес. Это всегда было занозой для таких инструментов, как Fiddler.

Однако вы часто можете обойти это, буквально http://somesite.com:1234. Кто-то нашел время, чтобы зарегистрировать домен «somesite.com» для автоматического перенаправления на 127.0.0.1. Это вводит IE в заблуждение, что он является внешним доменом, но должен проходить через ваш прокси при перенаправлении на локальный сервер.

Удачи.

4 голосов
/ 26 сентября 2011

Да, есть способ!

В IE9, если у вас есть прокси, настроенный вручную в окне «Свойства обозревателя», вы можете нажать «Дополнительно» и просто добавить <-loopback> в список обхода прокси. В IE6 локальные URL-адреса проходят через прокси, когда прокси настраивается вручную. Только версии IE7 + не отправляют запросы localhost на прокси-сервер.

Если вы хотите более глобальное решение, вы можете создать скрипт автоматической настройки прокси. В основном это файл JavaScript, который содержит функцию FindProxyForURL. Вы можете настроить Свойства обозревателя с помощью URL-адреса этого сценария. Все HTTP-запросы будут запрашивать FindProxyForURL для нужного прокси-сервера. Поэтому, если вы хотите, чтобы все URL проходили через прокси, вы должны сделать что-то вроде:

function FindProxyForURL(url, host) {
    return "PROXY localhost:1234";
}

Если вы хотите, чтобы только внешние адреса передавались на ваш локальный прокси, вы должны сделать что-то вроде:

function FindProxyForURL(url, host) {
    if (isPlainHostName(host)) { 
          return "DIRECT"; 
    }
    return "PROXY localhost:1234";
}
3 голосов
/ 03 июля 2013

В Windows:

Перейти к Windows / System32 / Драйверы / Etc

в блокноте, работающем от имени администратора

Добавьте что-то подобное в ваш файл hosts:

127.0.0.1 mysite.local

тогда все данные на этот хост в http://mysite.local будут получены прокси.

Ubuntu: / И т.д. / хосты

Mac: http://decoding.wordpress.com/2009/04/06/how-to-edit-the-hosts-file-in-mac-os-x-leopard/

0 голосов
/ 23 августа 2009

Это зависит от вашего браузера. В Firefox проверьте, что «no proxy» пусто. По умолчанию Firefox блокирует прокси URL-адресов для localhost и 127.0.0.1.

mozilla.org

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...