java - 在 Tomcat 上配置 SSL |获取空白文件

标签 java tomcat ssl

我正在使用

生成我的证书

keytool -genkey -alias xyz -keyalg RSA -keystore xyz1

并将其导入

  <Connector port="8443"
    protocol="org.apache.coyote.http11.Http11Protocol"
    maxThreads="25" SSLEnabled="true" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS" keystoreFile="/Users/xyz/keytool/xyz1" keystorePass="HelloHello"/>

根据catalina日志,tomcat已经启动成功

Oct 19, 2015 7:52:38 AM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["http-bio-8443"]

现在,当我尝试通过 HTTPS localhost:8443 访问我的网站页面时,会下载一个 7 字节的空白文件,其中包含一些特殊字符。

tomcat 日志中没有出现错误。

最佳答案

你可以看到我的工作 ssl 配置:

    <Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           keystoreFile="conf/tomcat.keystore" keystorePass="*********"
           clientAuth="false" sslProtocol="TLS" URIEncoding="UTF-8"/>

keystore 文件存储在与 CATALINA_HOME 参数相关的文件夹中。 也许路径有问题?

尽量放在tomcat根目录下。

要检查的另一件事: 你写过https://localhost:8443/[your_war_path]吗在浏览器中?

编辑: 另一件事,检查 web.xml 您发送 secret 数据 例如:

 <security-constraint>
    <display-name>Unsecured</display-name>
    <web-resource-collection>
        <web-resource-name>Unsecured area</web-resource-name>
        <url-pattern>/login.html</url-pattern>
        <url-pattern>/passwordReset.html</url-pattern>
        <url-pattern>/public/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

关于java - 在 Tomcat 上配置 SSL |获取空白文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33217673/

相关文章:

java - 如何检查数组中是否有重复的数字?

java - 为 Tomcat 上的 Webapp 安排任务

ssl - 自动找到正确的中间 CA 证书

php - 使用 HTTPS 和 cookie 安全地传输密码

java - 图形因未知原因消失

java - 从数组中删除对象 [java]

java - gradle构建时未生成Clojure(声明规则)文件

java - 通过 JMX 连接时,Tomcat 中的 JNDI 上下文初始化失败

tomcat - 是否可以使用 Jenkins 在 tomcat 中部署多个 war 文件?

ssl - 代理后面的 TYPO3 使用 http 而不是 https 生成绝对链接