Apache-Weblogic 404配置

时间:2013-10-23 13:12:52

标签: apache2 weblogic-10.x custom-error-pages

我已经搜索了相当多的内容并发现了类似的问题,但不完全一样,但是如果这是一个重复的问题,我会道歉。

基本上,当我的应用程序关闭时,我尝试使用自定义错误页面(即404.html)处理HTTP错误响应(即404),但weblogic仍在运行。

我正在使用Apache 2.2和weblogic模块。我为Apache设置了ErrorDocument指令以及块中的ErrorPage参数。

我还在我的web.xml中为我的应用程序设置了位置,但这个问题适用于应用程序关闭时。

目前,当应用程序关闭且weblogic正在运行时,我将获得weblogic默认404页面。如何强制apache和/或weblogic使用我的自定义页面?

以下是我尝试过的配置的一个变体示例。

 <IfModule mod_weblogic.c>
    WebLogicCluster host:port,host:port
    KeepAliveEnabled ON
    WLProxySSL OFF
    Debug ALL
    ErrorPage http://host:port/errors/errorSystem.html
</IfModule>

我可以直接访问错误页面,但不会在出错时转发流量。

我还尝试将ErrorPage设置为相对URL,这是理想的解决方案。

2 个答案:

答案 0 :(得分:0)

apache.org的解释也是代码示例:

ErrorDocument 500 http://xxx/
ErrorDocument 404 /Lame_excuses/not_found.html
ErrorDocument 401 /Subscription/how_to_subscribe.html 

答案 1 :(得分:0)

根据WebLogic文档,使用ErrorPage参数,“当后端服务器返回HTTP 503 /服务不可用响应并且没有用于故障转移的服务器时,插件会重定向到错误页面。” EM>。

因此,WebLogic的404错误将重定向到使用ErrorPage参数指定的自定义错误页面。

解决方法是创建一个简单的Web应用程序并将其部署到WebLogic上。在这个网络应用程序中:

    [ web.xml ]中的
  1. 指定自定义错误代码和页面映射,例如:

    &LT;错误页&GT;
    &LT;错误代码&GT; 404&LT; /出错码&GT;
    &LT;地点&gt; /errors/404.html< /地点&gt;
    &LT; /错误页&GT;

  2. [ weblogic.xml ]中的
  3. 说明您的上下文根是'/':

    &lt; weblogic-web-app xmlns =“http://www.bea.com/ns/weblogic/90”xmlns:xsi =“http://www.w3.org/2001/XMLSchema-instance” &GT;
    &LT;上下文根&GT; /&LT; /上下文根&GT;
    &LT; / WebLogic的web应用程序&GT;

  4. 您需要设置错误页面,例如您的webapp的'/ errors'文件夹。

  5. 请注意,“ FMW欢迎页面应用程序”可能已经部署,并在WebLogic域中使用“/”作为context-root。如果是这种情况,我认为取消部署或解除它是安全的,但建议您将SR提升到产品支持,询问是否这样做很难。