AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 805060
Accepted
Chris Smith
Chris Smith
Asked: 2016-09-24 16:37:37 +0800 CST2016-09-24 16:37:37 +0800 CST 2016-09-24 16:37:37 +0800 CST

没有重定向的Apache ErrorDocument?

  • 772

我有一个可以/转发到 Tomcat 服务器的 Apache 服务器。当 Tomcat 服务器关闭时,我想显示一条错误消息。这是我目前拥有的:

ErrorDocument 502 "We're down, sorry :("

我想展示一个相对丰富的文档(有趣的图片和东西),而不仅仅是一句话信息。问题是,我似乎无法提供文件,只能重定向到它们。我正在看这个文档。

我想保留相同的 URL,但提供不同的 HTML 文件。有什么办法可以做到这一点?

<VirtualHost *:443>
        ServerName ${DOMAIN_NAME}
        ProxyRequests Off

        ProxyAddHeaders On

        ProxyPass /stomp http://tomcat:8080/stomp
        ProxyPassReverse /stomp http://tomcat:8080/stomp

        ProxyPass /.well-known http://mail.${DOMAIN_NAME}:80/.well-known
        ProxyPassReverse /.well-known http://mail.${DOMAIN_NAME}:80/.well-known

        ProxyPassMatch / http://tomcat:8080 retry=0 timeout=10
        ProxyPassReverse / http://tomcat:8080

        SSLCertificateFile /etc/letsencrypt/live/${DOMAIN_NAME}/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/${DOMAIN_NAME}/privkey.pem
        Include /etc/letsencrypt/options-ssl-apache.conf

        ErrorDocument 502 ${PROXY_ERROR_MESSAGE}
        ErrorDocument 503 ${PROXY_ERROR_MESSAGE}
</VirtualHost>
apache-2.4 errordocument
  • 1 1 个回答
  • 2856 Views

1 个回答

  • Voted
  1. Best Answer
    Unbeliever
    2016-09-25T08:15:36+08:002016-09-25T08:15:36+08:00

    如果您为错误文档指定了一个完全限定的 URL,那么您将隐含地导致重定向,因为必须告诉浏览器“去其他地方获取错误页面”。但是,如果您执行以下操作:

    错误文档 /errors/my503.html

    只要该 URI 路径直接在 apache 中提供,就不会有重定向。在您的设置中,因为您正在代理“/”,所以您必须明确排除该文档被代理回 tomcat,如下所示:

    ProxyPass /errors/my503.html !
    错误文档 /errors/my503.html
    

    您还需要为 HTML 中使用的任何页面组件添加排除项。

    如果您想从来自 tomcat 的实际 HTTP 错误代码(通常为 4xx 代码)提供自定义错误页面,那么您应该查看 ProxyErrorOverride 指令

    • 2

相关问题

  • Apache2 - SSL 不工作

  • Apache <VirtualHost> 标签,如果客户端的 IP = x 则不重定向... 怎么做?

  • 我无法启用我的网站?[关闭]

  • SELinux 阻止 Apache 写入文件

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve