Вопрос

У меня есть apache2 и tomcat6 (не установлены из репозитория apt, загружены и установлены вручную), работающие на порту 80 с настройкой mod_jk.Доступ к страницам сервлета jsp осуществляется с помощью браузера, указывающего на http://myapp.mydomain.com/ (виртуальный хостинг выполняется в tomcat(server.xml) и в apache).Я пытаюсь перенаправить страницу ошибок tomcat 503 на пользовательскую страницу ошибок, когда tomcat не работает (pkill -9 java или /etc/init.d / tomcat stop) во время развертывания.

Корневой каталог моего документа apache - /var/www/, поэтому я размещаю запись ниже в файле apache2.conf

ErrorDocument 503 maintenance.html и создал файл maintenance.html в каталоге /var/www.Когда я тестировал остановку tomcat, и я перенаправил страницу на maintenance.html без изменения URL, но фактическая страница не отображается, вместо этого указывается имя файла maintenance.html отображается в браузере.Может ли кто-нибудь помочь мне правильно настроить apache, который перенаправляет на соответствующую страницу maintenance.html, когда tomcat не работает?.

Это было полезно?

Решение

Из самого документация apache,

URLs can begin with a slash (/) for local web-paths (relative to the 
DocumentRoot), or be a full URL which the client can resolve.

Я думаю ErrorDocument 503 /maintenance.html должно сработать.

Другие советы

Если вы используете Apache с соединителями Tomcat, решение немного сложнее, чем простое добавление директивы ErrorDocument.Вы должны явно указать Apache, чтобы он НЕ искал ваш файл /maintenance.html в подключенном соединителе;скорее, вместо этого ему нужно искать его локально.

Я опубликовал свое рабочее решение этой проблемы здесь

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top