项目通过https访问的tomcat相关配置

时间:2023-03-09 00:18:34
项目通过https访问的tomcat相关配置

开发项目已经完成,那么就是要部署项目到服务器上面。我最近把刚完成的项目部署到服务器上面,内网通过http协议进行访问一切正常,但是测试外网通过https协议进行访问的时候就出现了一些js文档找不到的bug,显示js访问路径居然是http://127.0.0.1的。

项目通过https访问的tomcat相关配置

解决思路:内网访问正常(http访问),但是外网(https)访问出现了上面的情况。原来是忘记了在tomcat中server.xml还需要对https端口协议进行相关配置的。

项目通过https端口号访问的相关配置:

(1)生成证书文件

①证书相关机构去申请证书,这一种是需要购买的

②自签名证书,就是利用工具自己生成证书。我们运用JDK自带工具KeyTool生成自签发证书

a,打开DOS界面

b,在界面中输入下面指令:keytool -genkey -alias sslkey -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore F:/sslkey/sslkey.keystore -storepass 123456

使用keytool命令生成证书:

keytool

-genkey

-alias (别名)

-keypass (别名密码)

-keyalg RSA

-keysize 1024(密钥长度)

-validity 365(有效期,天单位)

-keystore F:/sslkey/sslkey.keystore(指定生成证书的位置和证书名称)

-storepass (获取keystore信息的密码)

c,确定后可以在-keystore 路径中,你自己设置的路径下面寻找到生成的证书

项目通过https访问的tomcat相关配置

(2)修改Tomcat下的conf文件夹中的server.xml文件,把https协议的端口号打开并作相应的调整

          <Connector port="8443" protocol="HTTP/1.1"
SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false"
keystoreFile="F:/sslkey/sslkey.keystore"
keystorePass="123456" sslProtocol="TLS" />
①keystoreFile的值是刚才生成证书存放(keystore)的路径地址
②keystorePass是证书的密码(storepass)的值
到了这一步,我们重启tomcat,那么访问项目就不需要通过https协议加上其端口号才可以访问
注意:我查询网上了相关资料,他们会提到修改web项目中的web.xml文件,增加下面的内容:
<security-constraint> 

       <web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection> <user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint> </security-constraint>

对于在web.xml配置的这段代码一些相关解释链接如下,可以点击进去看看

http://blog.csdn.net/yangjun2/article/details/8211492

http://blog.csdn.net/buster2014/article/details/47185459