Перенаправление Varnish / Apache на внутренний порт 8080

Я использую Varnish 2 с бэкэндом Apache на 8080 на той же машине. Все работает нормально, кроме одной проблемы: иногда Apache(?) Перенаправляет на внутренний порт:8080, особенно когда я использую htaccess. Пользователи отображают порт 8080 в URL-адресе, а Google сканирует мой сайт и на внутреннем порту, что нежелательно.

Я хочу, чтобы Apache 8080 был доступен только для Varnish на localhost, а не перенаправлять или отображать внутренний порт.

Что может быть быстрым способом предотвращения перенаправления пользователей на 8080, а поисковым системам будет отказано в сканировании серверной части?

Вот пример строки htaccess:

redirect /promotion /register.php?promotion=june

что заставляет www.domain.com/promotion перенаправлять на www.domain.com:8080/register.php?promotion=june

4 ответа

Чтобы просто прояснить ответ Скотта применительно к Ubuntu, возможно, ко всем дистрибутивам на основе Debian, вы можете просто добавить mod_rpaf на свой веб-сервер с помощью:

sudo apt-get install libapache2-mod-rpaf

Модуль настраивает и перезагружает apache по мере необходимости, накладные расходы минимальны, и он делает именно то, что вы просили.

У меня была такая проблема по несколько другим причинам, но решение вашей проблемы будет тем же.

К сожалению, это ошибка в Apache, и поэтому вместо того, чтобы объяснять весь ответ, я отправлю вас на открытое мной сообщение... Извините, что отправляю вас на другой веб-сайт, но в наилучших интересах решить этот вопрос.,

http://www.linuxquestions.org/questions/linux-server-73/apache-server-mod_rewrite-problem-892985/

Это исправит вашу проблему, не беспокоясь.

Модуль mod_rpaf будет обрабатывать это для вас. Наш форк на https://github.com/gnif/mod_rpaf имеет улучшения для порта и SSL и теперь является официальным источником.

Вам необходимо настроить прямое и обратное проксирование. Я сделал это в Tomcat, как описано здесь.

Не сделали этого на Varnish, но вот пост, посвященный этой проблеме.

Другие вопросы по тегам