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

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

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

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

Каков был бы быстрый способ предотвратить перенаправление пользователей на 8080 и запрет поисковым системам сканировать серверную часть?

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

redirect /promotion /register.php?promotion=june

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

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

sudo apt-get install libapache2-mod-rpaf

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

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

Я не делал этого в Varnish, но вот пост это решает проблему.

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

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

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

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

Это решит вашу проблему без проблем.