我有一个在以下两个设置中运行的Web应用程序:1)在Windows7上运行的JBoss和2)在CentOS上运行apache httpd反向代理的JBoss。
我下载了jbossWebService.jar并将其添加到WEB-INF / lib目录中,以便使用org.jboss.web.tomcat.filters.ReplyHeaderFilter类。以下是我的过滤器配置。
<filter>
<filter-name>CommonHeadersFilter</filter-name>
<filter-class>
org.jboss.web.tomcat.filters.ReplyHeaderFilter</filter-class>
<init-param>
<param-name>X-Powered-By</param-name>
<param-value>MyWeb</param-value>
</init-param>
<init-param>
<param-name>Server</param-name>
<param-value>MyServer</param-value>
</init-param>
</filter>
在apache httpd conf文件中,我有以下内容,修改哪些,没有任何影响。
ServerTokens ProductOnly
ServerSignature Off
我在浏览器中看到的内容:
没有apache httpd的JBoss显示以下内容:
X-Powered-By:MyWeb,JSP / 2.2
服务器:Apache-Coyote / 1.1,MyServer
带有apache作为反向代理的JBoss显示以下内容:
X-Powered-By:MyWeb,JSP / 2.2
服务器:Apache-Coyote / 1.1
我想要的是什么:
Apache-Coyote / 1.1和JSP / 2.2即将消失。 apache httpd背后的人甚至没有将MyServer显示为服务器横幅。我想要出现,但这不是必需品。
感谢任何帮助。
感谢。
Prajesh
答案 0 :(得分:1)
设置系统属性org.apache.coyote.http11.Http11Protocol.SERVER似乎适用于JBoss AS 7.1.1.Final
<system-properties>
<property name="org.apache.coyote.http11.Http11Protocol.SERVER" value="secretserver"/>
</system-properties>
虽然警告上面提到的系统属性('org.apache.coyote.http11.Http11Protocol.SERVER')在最新版本的JBoss Web的sys属性文档中不存在,但是如果设置该属性不起作用也许你正在使用的JBoss Web版本中缺少它,编写自定义过滤器可能是唯一的选择:(