自己写了一个后端对接微信小程序,小程序需要进行https才能请求并且有域名。所以折腾了两天。
一:申请域名
我服务器是腾讯云的所以我用的是腾讯云,首先去腾讯云搜索注册域名
我们看看腾旭云的域名相关的介绍:
注册要实名制,实名制后等待通过后,需要在3天之后备案(不备案不能正常发布使用,但是写接口的时候是可以正常解析的)
接下来就去注册你的域名吧。
点击注册域名后,可以搜索关键字,然后购买你想要的域名,价格不一样,自行根据条件选择。
购买后来到我顶域名就能看到你的域名啦,然后点击解析
点击快速添加解析
输入你服务器的ip就算可以了
二:申请ssl证书
在域名处对应点击ssl,www那个对应域名就是(www.你的域名.xxx),当然证书是免费的
下载你的证书
能看到有各种证书,我用的是tomcat的
.jsk就是对应tomcat证书了,.txt是密钥
下面就可以开始我们的tomcat配置了
三:配置tomcat域名(先配置好域名再绑定SSL)
去tomcat的conf目录下找到server.xml,找到 这两句把localhost换成你的域名,
把访问端口改成80
如果审批通过了,你也加入解析了,在tomcat下的项目可以在服务器是可以直接访问的,但是在其他地方不行,因为没有备案,所以一个步骤不能少,你还得3天后备案然后等上一段时间审核,所以小伙伴们尽早弄吧。
这是我服务器访问
这是我本地主机访问(因为我没来得及备案,所有本地主机不能访问)
如果可以访问,那么域名就改好了,不能正常访问的,去看看端口还有域名解析之类的弄全了没有,接下来是绑定SSL。
四:tomcat绑定ssl
首先把你刚刚获得的SSL证书放到tomcat的conf目录下,方便使用(是tomcat的证书)
在tomcat目录conf下的server.xml,把刚刚改端口号80后面的redirectPort改成443
找到这个句也改成443,如果这段注释就去掉注释
找到这么一句
<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
type="RSA" />
</SSLHostConfig>
</Connector>
-->
他是注释的,把注释去掉,把port改成443,证书文件路径改成你的证书路径,再加上一句 certificateKeystorePassword="xxxxxxxx"
例:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/douyacai.work.jks"
certificateKeystorePassword="xxxxxxxx"
type="RSA" />
</SSLHostConfig>
</Connector>
保存,重启服务器........
之后进行测试再,刚刚的http加上一个s,看看是否能成功(服务器中)
至此就完成了,不能正常访问的小伙伴自行检测,一步步来就比较容易分析,比如看看服务器防火墙规则有没有开放443端口(一般默认开放)等。