1

与 wordpress 等所有 CMS 系统一样,Drupal 具有维护模式,用户可以在该模式下看到自定义消息,指示站点已离线进行维护。如何在使用 struts 制作的 Web 应用程序中做到这一点?

我的想法:

1) 设计具有相同上下文路径的单独 Web 应用程序,并在维护和离线您的原始站点期间使用它。第二个应用程序仅包含维护页面,对于未找到的页面,它也显示维护页面。

2) 将维护模式值放入属性文件或某些 xml 文件或数据库值中,并在每个操作调用时检查它,如果为真则重定向到维护模式页面。(比第一个要好,但是已经做了很多动作,将花费大量时间在每个动作中插入条件代码,特别是在调度动作文件中,但这将是永久的内置应用程序解决方案。)

我在寻找什么?

创建某种全局操作,将每个操作路径重定向到维护页面。

像这样的东西:

<action-mappings>
 <action path="/*" forward="/jsp/maintenance.jsp"/>
</action-mappings>

任何想法都会非常有帮助。

谢谢。

4

1 回答 1

1

要在维护模式期间阻止用户,您需要将用户从正常模式切换到维护模式。一种拦截所有传入请求并将它们重定向到维护模式页面的方法是向您的 Web 应用程序添加一个 Servlet 过滤器。在 Servlet 过滤器内部,您需要检查过滤器是否处于正常运行模式或维护模式。

如果过滤器处于正常操作模式,则请求将正常传递到 Web 应用程序。如果过滤器处于维护模式,则应将请求传递到维护消息页面。

以下链接可以帮助您在维护模式下配置过滤器:

http://tutorials.jenkov.com/java-web-apps/web-app-maintenance.html

于 2013-09-09T14:10:28.140 回答