云服务器 linux tomcat http协议换成https协议
云服务器 linux tomcat http协议换成https协议
前提需要条件:云服务器 ECS、安装好tomcat 可在浏览器访问云服务器IP的tomcat 、已解析的域名
我在网上百度搜了很多,以下是我刚刚https运行成功,所以在这里写文章希望能帮到大家同时防止以后我可能会用到,nginx 有机会我会实际实验操作,然后把对的步骤给大家,避免走太多歪路和浪费太多宝贵的时间。
http 转为https 的步骤: 云服务器安装过SSL和运行443端口就直接看下面的步骤, 如果云服务器没有安装过SSL和运行443端口请点击 去安装好SSL再来操作下面的步骤
我们先去阿里云官网申请一个免费SSL 证书 图为:
步骤1:打开链接图如下
步骤2:图如下
步骤3:图如下
步骤四:图如下
步骤5:图如下:
步骤6:图如下:
点下一步
步骤7:图如下:
出现这个图 说明提交成功,接下来需要等,打印十分钟之内左右把
步骤8:图如下:
选择tomcat 的下载
步骤9:图如下 解压刚刚下载的
步骤10: 打开云服务器 到tomcat 路径/conf 然后新建 cert目录 新建之后到cert 目录
步骤11: 然后我们到conf 编辑server.xml
找到自己tomcat端口的地方 改成为
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
和添加这个代码块:
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" scheme="https" secure="true" keystoreFile="/usr/local/tomcat/conf/cert/3228555_www.linuxxxx.xyz.pfx" keystoreType="PKCS12" keystorePass="pfx-password.txt文件里的密码" clientAuth="false" SSLProtocol="TLSv1+TLSv1.1+TLSv1.2" ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
搞完这些之后我们去阿里云服务器把服务器给重启,然后再去tomcat目录/bin 启动服务
步骤12:图如下 http自动重定向到https:
注意:tomcat/conf 的web.xml因为代码过长推荐用xtfp 点web.xml右键用记事本编辑 到tomcat/conf 编辑web.xml 到最后 看到这个 就添加代码如下:
<login-config> <!-- Authorization setting for SSL --> <auth-method>CLIENT-CERT</auth-method> <realm-name>Client Cert Users-only Area</realm-name> </login-config> <security-constraint> <!-- Authorization setting for SSL --> <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>
然后在去tomcat /bin 停止就是关闭运行服务 然后在启动服务 就可以去访问https 了 注意:如果当前还不能访问,请等一会然后去访问就可以访问了。 绝对有效,同学试过可以用,运行成功!注意要云服务器安装好SSL