在 Azure 上基于 Tomcat 9 的应用服务中禁用自定义错误页面

问题描述 投票:0回答:1

我在 Azure 上有一个基于 Tomcat 9 的应用程序服务(请参阅附加的堆栈),该服务具有季节性使用模式,我需要在夏季将其切换到较低的应用程序服务计划。

webapp stack on Az

该应用程序一直在 B3 sku 计划上完美运行,直到赛季开始,然后切换到 P1V3。到目前为止一切顺利。

现在我想在“休眠”期间将其切换回 B3,因为它便宜 50% 以上,并且足以满足休眠要求。削减成本是最常识性的。

但是 Azure 不允许这样做,并显示消息“ 目标 sku('Basic')不支持 CustomErrorPages,请在进行此更改之前删除所有自定义错误页面。”

Az 中的错误页面设置如下:error pages setup

我无法删除这 3 个条目,它们也出现在另一个已经运行的 B3 Web 应用程序上,使用相同的堆栈,没有自定义错误页面,并且 Az 敦促我升级到高级计划(见下文)。我肯定不需要或不想这样做。error ages setup on other webapp

我尝试设置和删除自定义错误页面,希望在某个时候假定一些默认值,并且我想明确地取消配置/删除自定义错误页面。

我已经在网上搜索了一周,寻找现在可用的解决方案,副驾驶说该解决方案仅适用于基于 ASP.NET 的 Web 应用程序。与此同时,成本毫无意义地增加,我的网络应用程序大部分闲置,但我需要让它继续运行,以便用户能够访问他们的帐户数据,直到赛季再次开始。

我错过了什么?

azure tomcat web-applications custom-error-pages azure-app-service-plans
1个回答
0
投票

由于 B3 计划不支持 Azure 门户定义的自定义错误页面,因为它需要高级计划,因此可以通过编辑

web.xml
文件直接在 Tomcat 应用程序中配置自定义错误页面。此方法将独立于 Azure 应用服务计划运行。

enter image description here

 <error-page>
    <error-code>500</error-code>
    <location>/error.html</location>
 </error-page>
 <error-page>
    <error-code>404</error-code>
    <location>/file_not_found.html</location>
 </error-page>
  • 将这些行添加到 web.xml 配置文件中,将所有 Tomcat 404 错误重定向到定义的页面。

  • 自定义错误页面(

    file_not_found.html
    error.html
    )位于 Web 应用程序中的适当位置。

MyWebApp/
├── src/
│   └── main/
│       ├── java/
│       │   └── com/
│       │       └── example/
│       │           └── mywebapp/
│       │               └── App.java
│       ├── resources/
│       └── webapp/
│           ├── WEB-INF/
│           │   ├── web.xml
│           └── error_pages/
│               ├── file_not_found.html
│               └── error.html
└── pom.xml
  • 这里我通过触发 404 和 500 错误来测试应用程序,以检查自定义错误页面是否正确显示。

enter image description here

如果预算是问题,您可以自动/手动扩展您的实例。

enter image description here

要降级您的计划,请转到

Scale up(app service)

enter image description here

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.