有很多手册介绍如何启用从HTTP到HTTPS的自动重定向。但是我需要禁用这种重定向(根据此建议SSL everywhere - all the time)。我使用Tomcat 7.x,我需要实现以下内容:
所有资源均受保护(通过web.xml中的配置)[完成]
<security-constraint>
<web-resource-collection>
<web-resource-name>Application</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
当有人通过HTTP发出请求时-返回错误(我想是HTTP状态403),并且没有任何重定向
我已经尝试删除
redirectPort
中的server.xml
,<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"/>
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
但只会导致重定向到443端口(但我希望禁用重定向)。
所以我的问题是:如何禁用从HTTP到HTTPS的自动重定向并返回错误?
最佳答案
在conf / web.xml中注释掉块。这样做,redirectPort将被忽略。
关于tomcat - 如何在Tomcat上禁用从HTTP到HTTPS的自动重定向,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36032803/