Назад | Перейти на главную страницу

mod_proxy не работает как прямой прокси в простой конфигурации

(В Mac OS X 10.6, Apache 2.2.11)

Следуя часто повторяемым советам в Google, я настроил mod_proxy на моем Mac, чтобы он действовал как прокси-сервер для HTTP-запросов. Мой httpd.conf содержит это:

<IfModule mod_proxy>
ProxyRequests On
ProxyVia On
<Proxy *>
  Allow from all
</Proxy>

(Да, я понимаю, что это не идеально, но я за брандмауэром пытаюсь понять, почему это вообще не работает)

Итак, когда я указываю настройки прокси-сервера моего браузера на локальный сервер (ip_address: 80), происходит вот что:

  1. Я просматриваю http://www.cnn.com
  2. Я вижу через сниффер, что он отправляется в Apache на Mac
  3. Apache отвечает своей домашней страницей по умолчанию («Это работает!» - все, что говорит эта страница)

Итак ... Apache работает не так, как ожидалось - он не пересылает запрос моего браузера в Интернет в cnn. Ничто в файле журнала не указывает на ошибку или проблему, и Apache возвращает браузеру заголовок 200.

Ясно, что есть очень простой шаг настройки, который я не понимаю ... но что?

Присутствует ли mod_proxy? Попробуйте удалить <IfModule> из вашей конфигурации и проверьте журнал ошибок.

<IfModule> Директива: включает директивы, которые обрабатываются при условии наличия или отсутствия определенного модуля.

Не должно быть

<IfModule proxy_module>
  <IfModule proxy_http_module>

    <Proxy *>
      Order Deny,Allow
      Deny from all
      Allow from some.approved.list
    </Proxy>

  </IfModule>
</IfModule>