腾讯云将网站从http转换成https

1449 篇文章 12 订阅
1449 篇文章 7 订阅

准备:

(1)首先需要注册和备案一个域名,比如www.leboop.com

(2)需要一台服务器,这里以腾讯云服务器为例,自行购买

(3)在服务器上安装好JDK和Tomcat(本例以Tomcat服务器为例)

如果上面都已经准备好,此时可以正常访问http://www.leboop.com,出现的是tomcat页面,如下:

如果不能正常访问,请检查腾讯云安全组,如图:

这里通过创建自定义安全组,放开了22/80/443/3389端口。tomcat默认情况下,端口是8080,这个端口在自定义安全组中并没有放开,我们可以在conf/server.xml中修改端口号,默认如下:

   

将8080修改成80即可。

上面只能通过http访问页面,而不能通过https访问,而且还被Google Chrome浏览器标记为不安全,开发小程序时,小程序请求也只支持https或者wss协议,不支持http协议。如图:

所以将http转换成https安全访问迫在眉睫。事实上,http是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少;而https是以安全为目标的http通道,简单讲是http的安全版,即在http上加入SSL层,https的安全基础是SSL,因此加密的详细内容就需要SSL。下面通过腾讯云下载一个免费的ssl证书。

登录腾讯云,打开SSL证书管理如图:

可以申请免费证书,如图:

直接点击确定即可。按照步骤填写一些信息,申请成功后,如图:

点击下载,解压后目录结构,如图:

目录下提供了四种服务器SSL证书(Apache、IIS、Nginx、Tomcat),我们以Tomcat服务器为例。Tomcat目录下有两个文件,如下:

下面来配置Tomcat,首先执行shutdown.sh关闭tomcat服务器,将下载的Tomcat证书www.leboop.com.jks上传到tomcat的conf目录下(与server.xml同目录),然后打开server.xml文件,在80端口的connector前添加如下的connector:

 有两个参数需要修改

(1)keystoreFile

这里是conf/www.leboop.com.jks,就是jks文件的相对路径,根据自己的域名情况配置

(2)keystorePass

直接将keystorePass.txt内容拷贝过来即可

配置好后,保存。重启Tomcat,此时就可以访问https://www.leboop.com了,同时也可以访问http://www.leboop.com。如果修网访问http://www.leboop.com时自动跳转到https://www.leboop.com,我们下面继续配置,

  1. 打开 conf 目录下的 web.xml 文件,找到 </welcome-file-list> 标签。

  2. 在 </welcome-file-list> 下面换行,并添加以下内容:

    CLIENT-CERTClient Cert Users-only AreaSSL/*CONFIDENTIAL

打开同目录下的 server.xml 文件,将 redirectPort 参数修改为 SSL 的 connector 的端口,即443端口。如下所示:

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />

这时,访问http://www.leboop.com时,自动跳转到https://www.leboop.com。

中间在配置过程中,出现了无法关闭tomcat,错误如下:

[root@VM_16_3_centos logs]# shutdown.sh 
Using CATALINA_BASE:   /root/soft/apache-tomcat-8.5.39
Using CATALINA_HOME:   /root/soft/apache-tomcat-8.5.39
Using CATALINA_TMPDIR: /root/soft/apache-tomcat-8.5.39/temp
Using JRE_HOME:        /root/soft/jdk1.8.0_144
Using CLASSPATH:       /root/soft/apache-tomcat-8.5.39/bin/bootstrap.jar:/root/soft/apache-tomcat-8.5.39/bin/tomcat-juli.jar
Apr 10, 2019 9:37:05 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Could not contact [localhost:[8005]]. Tomcat may not be running.
Apr 10, 2019 9:37:05 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop: 
java.net.ConnectException: Connection refused (Connection refused)
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at java.net.Socket.connect(Socket.java:538)
    at java.net.Socket.(Socket.java:434)
    at java.net.Socket.(Socket.java:211)
    at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:504)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:406)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:498)

原因是没有启动完毕,执行了关闭,因为购买的腾讯云服务器配置比较低,tomcat启动比较慢。需要等待几分钟,在访问页面时,也不要觉得是配置有问题,请耐性等待一会。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值