與Liferay的工作它總是說,大約門戶響應:如何從http響應字段中移除http標題Liferay-Portal,Server?
Liferay-Portal:Liferay Portal Community Edition 6.1.0 CE (Paton/Build 6100/January 6, 2012)
Server:GlassFish Server Open Source Edition 3.1.1
我怎麼可以刪除這些信息?
與Liferay的工作它總是說,大約門戶響應:如何從http響應字段中移除http標題Liferay-Portal,Server?
Liferay-Portal:Liferay Portal Community Edition 6.1.0 CE (Paton/Build 6100/January 6, 2012)
Server:GlassFish Server Open Source Edition 3.1.1
我怎麼可以刪除這些信息?
無法刪除添加到HttpServletResponse
對象的標頭。處理這個問題的唯一方法是使用Filter
的Wrapping the HttpServletResponse
對象,並吃掉你想要忽略的標題。
下面是示例代碼使用,
public class EatHeadersFilters implements Filter
{
private List<String> headers;
public void init(FilterConfig filterConfig) throws ServletException
{
String headersString = filterConfig.getInitParameter("headers");
String[] strings = headersString.split(",");
headers = Arrays.asList(strings);
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException
{
filterChain.doFilter(request,
new HttpServletResponseWrapper((HttpServletResponse) response){
public void addHeader(String headerName, String headerValue)
{
if(!headers.contains(headerName)){
super.addHeader(headerName, headerValue);
} else {
//eat the header
}
}
});
}
public void destroy()
{
}
}
拉梅什是正確的,但是這是純粹的Servlet實現。請檢查界面com.liferay.portal.kernel.servlet.WrapHttpServletResponseFilter
。它是由相同的目的提供的。它將在Portlet上下文中工作。
您可以使用下面的鍵portal-ext.properties,只顯示應用程序名稱和版本(如社區)
http.header.version.verbosity=partial
這不應該顯示特定版本。
原始資源在http://arunkumarsrm.blogspot.com/2012/11/liferay-611-ga2-application-security.html
發現你也可以進一步檢查以下票證來與所提供的補丁熟悉(我還沒有嘗試過)
http://issues.liferay.com/browse/LPS-2748
http://issues.liferay.com/browse/LPS-9011
* UPD:*其實您可以完全禁用以下選項的服務器信息:
# portal-ext.properties:
http.header.version.verbosity=Liferay Portal Community Edition
和下面的配置在/tomcat-7.0.27/conf/server.xml
<Connector
URIEncoding="UTF-8"
connectionTimeout="20000"
port="8080"
protocol="HTTP/1.1"
redirectPort="8443"
server="My Server!"
/>
資源:http://tech-annex.blogspot.com/2013/01/hidding-server-signaturebanner.html
如果我想從所有門戶網站刪除? – test1604
編輯我的答案,請檢查。 –