Заставьте apache mod_proxy ProxyErrorOverride включать исходное содержимое страницы с помощью mod_include
Я использую apache mod_proxy для пересылки определенных запросов на сервер IIS, а также использую ProxyErrorOverride для обеспечения корпоративного стиля на страницах ошибок.
Однако я хотел бы включить исходное сообщение об ошибке сервера в пользовательские страницы ошибок, чтобы предоставить некоторую дополнительную информацию при отладке 500 ошибок. Прямо сейчас вся страница ошибки заменена. Согласно http://httpd.apache.org/docs/2.4/mod/mod_proxy.html это может быть возможно с mod_include, но я не смог найти более подробную информацию по этому вопросу. Может кто-нибудь помочь мне или указать мне решение?
Мой конфиг apache:
ProxyPreserveHost On
ProxyPass /errors !
ProxyPass / http://192.168.1.15:80/
ProxyPassReverse / http://192.168.1.15:80/
ProxyErrorOverride On
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html
1 ответ
К сожалению, невозможно объединить ответ об ошибке бэкэнда с ответом об ошибке. Внутренний ответ отбрасывается, когда его необходимо заменить локальным документом об ошибке.
В руководстве описывается нечто совершенно иное. Когда вы #include прокси-ресурс, процессор SSI просто увидит ответ об ошибке бэкэнда и включит его напрямую. При включенном ProxyErrrOverride он генерирует ошибку SSI.