介绍
最近写小程序,但是小程序的接口得通过https的形式访问,所以用nginx转发了一下。想到Google搜索引擎会提高https网站的权重,索性把我的网站改造成同时支持http和https了。看效果
http形式访问
https形式访问
我是用LET'S ENCRYPT来生成证书的,这个应该是用的最多的一个工具,也很方便。
我直接参考了官方文档上关于在CentOS 7上用nginx来让网站支持https的教程
1.下载
2.执行命令
如果不在这个目录可以用--nginx-server-root这个参数来指定
如果要为多个域名生成的话
或者每次指定一个,执行多次
如果选 1,则通过 HTTP 和 HTTPS 都可以访问。
中途中可能会遇到各种环境问题,Google解决即可。
我说一个我遇到的坑,我原来编译的时候没有选择SSL module,所以我得重新编译一下,编译完成之后我是用如下命令重启的
结果https访问一直有问题,后来我才意识到。sbin目录下重新生成的nginx得重启才能生效。
此时http://www.erlie.cc和https://www.erlie.cc就都可以访问了
nginx.conf配置
最后面的5行就是前面的命令自动帮你生成的,非常方便,都不用自己配置。
前端怎么写?
为了让前端在访客通过http方式访问的时候调用http接口。通过https访问的时候调用https接口,我是这样做的
nb.js
window.location.origin为拿到https://www.erlie.cc类似这样的请求地址,可以在浏览器自己试一下
user-service.js
请求用户相关的接口
userInfo为请求参数
有道无术,术可成;有术无道,止于术