我的Tomcat服务器出现问题。
当我在http:// beluka.net上访问我的网站时,我收到了一个安全警告,我想要离开。我宁愿将用户重定向到https:// www.beluka.net。我想问题是我在web.xml文件中的安全约束,这使得http://beluka.net重定向到https://beluka.net
<security-constraint>
<web-resource-collection>
<web-resource-name>ROOT</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
我还有一个工作重写规则,它将所有非www-traffic重定向到www-traffic,工作正常,但问题是我接受安全警告后才重写规则。
如何在http:// beluka.net的web.xml安全约束中打开“漏洞”?
我的重写规则(使用tuckey)是
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
"http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<!--
Configuration file for UrlRewriteFilter
http://www.tuckey.org/urlrewrite/
-->
<urlrewrite>
<rule>
<name>Primary Domain Name Check</name>
<condition name="host" operator="notequal">www.beluka.net</condition>
<from>^(.*)</from>
<to type="permanent-redirect">https://www.beluka.net$1</to>
</rule>
</urlrewrite>
答案 0 :(得分:0)
有几种方法可以做到这一点。
一种方法是为beluka.net创建一个新的虚拟主机,并部署一个简单的Web应用程序,将每个请求重定向到www.beluka.net。这样,http://beluka.net的请求将被重定向到http://www.beluka.net,然后再转到https://www.beluka.net,您将不会收到错误匹配的主机警告。
另一种方法是使用SAN为beluka.net重新订购证书。这样你的证书就会对beluka.net和www.beluka.net有效
也可能有其他方法可以做到这一点。