网站的Http请求转为Https请求

原创 2017年07月12日 13:49:18

一、申请Https证书

https://common-buy.aliyun.com/?spm=5176.2020520163.cas.1.zTLyhO&commodityCode=cas#/buy

二、安装证书

Tomcat支持JKS格式证书,从Tomcat7开始也支持PFX格式证书,两种证书格式任选其一。

文件说明:

  1. 证书文件214193373120488.pem,包含两段内容,请不要删除任何一段内容。

  2. 如果是证书系统创建的CSR,还包含:证书私钥文件214193373120488.key、PFX格式证书文件214193373120488.pfx、PFX格式证书密码文件pfx-password.txt。

1、证书格式转换

在Tomcat的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,附件中只包含214193373120488.pem文件,还需要将私钥文件拷贝到cert目录,命名为214193373120488.key;如果是系统创建的CSR,请直接到第2步。

到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记:

openssl pkcs12 -export -out 214193373120488.pfx -inkey 214193373120488.key -in 214193373120488.pem
2、PFX证书安装

找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到

<Connector port="8443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="cert/214193373120488.pfx"
    keystoreType="PKCS12"
    keystorePass="证书密码"
    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"/>

3、JKS证书安装(帮助)

( 1 ) 使用java jdk将PFX格式证书转换为JKS格式证书(windows环境注意在%JAVA_HOME%/jdk/bin目录下执行)

keytool -importkeystore -srckeystore 214193373120488.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS
回车后输入JKS证书密码和PFX证书密码,强烈推荐将JKS密码与PFX证书密码相同,否则可能会导致Tomcat启动失败。

( 2 ) 找到安装 Tomcat 目录下该文件Server.xml,一般默认路径都是在 conf 文件夹中。找到

<Connector port="8443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="cert/your-name.jks"
    keystorePass="证书密码"
    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"/>

( 注意:不要直接拷贝所有配置,只需添加 keystoreFile,keystorePass等参数即可,其它参数请根据自己的实际情况修改 )

4、 重启 Tomcat。

5、 通过 https 方式访问您的站点,测试站点证书的安装配置,如遇到证书不信任问题,请查看帮助视频。

三、域名或者“http://”强制跳转到“https://服务”

1.在tomcat里找到conf文件夹下的web.xml文件
2. 找到如下代码片段(在最下面)

 <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

3.在 /welcome-file-list 下面添加

 <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>
版权声明:博主地址:http://blog.csdn.net/zcl_love_wx https://blog.csdn.net/zcl_love_wx/article/details/75009641

http站点转https站点教程

http站点转https站点的教程网上有很多,这里我先谈谈自己遇到的坑。 首先我用的是阿里云服务器。站点是http,最近在接触微信小程序wx.request接口时,发现站点必须是https。求学心切,...
  • qq_19558705
  • qq_19558705
  • 2017年03月07日 22:00
  • 10048

HTTP转HTTPS实现

HTTP转HTTPS实现
  • lsj19830812
  • lsj19830812
  • 2010年07月12日 16:55
  • 58196

Tomcat配置https及访问http自动跳转至https

https介绍:    HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTT...
  • bao19901210
  • bao19901210
  • 2013年04月07日 16:38
  • 57157

http改成https的个人总结--以备以后使用

在阿里云上申请免费的CA证书,申请就不详细介绍了,可以看阿里云上的步骤,当申请下来后就可以下载证书了,这个时候就要配置服务器上的配置文件了,我的服务器上设置nginx了,所以就在nginx配置证书,在...
  • maqiang0422
  • maqiang0422
  • 2016年12月26日 12:29
  • 3956

使用相对Url无缝切换 HTTP HTTPS

在HTTPS的网站下,如果要访问HTTP资源,那么一般浏览器会弹出窗口询问用户是否允许加载不安全内容,云云。为了避免出现这样干扰用户的情况,所有网页下请求的资源都都必须是HTTPS资源。如果你的站点支...
  • bigsea622
  • bigsea622
  • 2016年03月02日 16:48
  • 3807

如何将HTTP站点转换成HTTPS、及后续问题

文章来源:http://www.chinaz.com/web/2015/0325/393194.shtml https及https的本地测试环境搭建。asp.net结合https的代...
  • aosica321
  • aosica321
  • 2016年12月14日 21:32
  • 2165

Android http转https

项目需求,把http转成https,在网上看看了,学了两种方法,第一种比较简单,是绕过证书,来达到访问https,另一种是认证自定义的证,整理一下网上那个的只是,全部内容都是看大神们的解答,作为一个搬...
  • u012929068
  • u012929068
  • 2017年02月07日 15:42
  • 1430

如何将HTTP站点转换成HTTPS、及后续问题

  • 2017年11月20日 17:16
  • 1016KB
  • 下载

javaWeb 项目Http转Https

1.在Tomcat中添加如下代码
  • xinghe_wang
  • xinghe_wang
  • 2017年03月26日 20:46
  • 6441

http 转 https

1. 首页通过JS直接跳转   var   a=location.href;  var   b=a.substring(5);  var   a=a.substring(0,5);  ...
  • jesseshen
  • jesseshen
  • 2011年08月14日 11:01
  • 7878
收藏助手
不良信息举报
您举报文章:网站的Http请求转为Https请求
举报原因:
原因补充:

(最多只允许输入30个字)