我有一个在 Tomcat7 上运行的 webapp 应用程序,它可以通过 https 轻松连接,但在没有它的情况下访问时返回无法连接错误。 下面是我的server.xml文件内容
<Service name="Catalina">
<Connector protocol="org.apache.coyote.http11.Http11Protocol"
port="443"
maxThreads="200" scheme="https"
secure="true" SSLEnabled="true"
keystoreFile="/usr/share/.keystore"
主机是 Amazon lightsail,端口 80 和 443 可用。我注意到用于启用非 http 流量的端口 80 未被使用。 443 无论如何。 我在 SO 和其他博客上尝试过其他方法,但似乎都没有用。
最佳答案
最后, 我偶然发现了可能是麻烦的问题。
添加端口 80 的连接器代码并重定向到 443 之后。 我将这部分代码更改为
<Service name="Catalina">
**<Connector port="443" protocol="HTTP/1.1"**
maxThreads="200" scheme="https"
secure="true" SSLEnabled="true"
keystoreFile="/usr/share/.keystore"
keystorePass="xxx111!!"
并一如既往地编辑 web.xml 文件。我猜主要的变化是在下面的代码部分。
希望这对那里的人有所帮助。
关于ssl - 在 Tomcat 7 应用程序上将 http 重定向到 https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58571331/