小程序https请求,http网站升到https

简介: 最近开发小程序,因为以前只写过小程序的前端没注意接口,现在才发现原来所有的接口都必须使用https协议了,马上研究了一波,顺便也想给自己的博客升成https的。申请免费证书哈哈没办法就是喜欢免费的。

最近开发小程序,因为以前只写过小程序的前端没注意接口,现在才发现原来所有的接口都必须使用https协议了,马上研究了一波,顺便也想给自己的博客升成https的。

申请免费证书

  • 哈哈没办法就是喜欢免费的。。。真是煞费苦心找了很久。。还是找到咯
  • https://freessl.org/进去有两个选项,一个亚洲诚信的(一年),一个let's encrypt(3个月),我选的亚洲诚信的
  • 填写邮箱,这里注意,如果选择浏览器生产的话,最好用chrome,我用ff失败了
    1.png

  • 得到一个txt记录和记录值
    2.5.jpg

  • 进入阿里云后台设置DNS
    2.png

3.png

  • 添加后,等待1分钟左右吧,就可以点“手动验证”了
  • 跳转到一个验证页面,验证,然后注意要全部都"匹配",如果没匹配继续在那个页面操作
  • 全部”匹配“后,回到之前页面,点击"验证"
  • 不出意外会获得证书了
    4.png

  • 分别用记事本保存下来,上面的存abc.crt,下面存abc.key
  • https://www.myssl.cn/tools/downloadchain.html,将abc.crt复制进去,得到中间证书chain.crt

配置apache的https

  • 自己用的apache,这里只讲apache的配置
  • 安装apache的mod_ssl.so模块
    yum -y install mod_ssl
  • 修改 ssl.conf
    vim /etc/httpd/conf.d/ssl.conf
    6.png

7.png

  • 重启apache
    service httpd restart
  • 启动重定向(可选),使用用户HTTP访问自动重定向为HTTPS,直接在http.conf最后配置即可,
    vim /etc/httpd/conf/httpd.conf
  • 在httpd.conf文件尾加入如下内容:
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*)$ https://%{SERVER_NAME}/$1 [L,R]

node配置https

  • 刚开始以为可以了,结果进入网站一看,所有接口都报错了,原来网站服务器使用https后,接口也必须使用https的,没办法,继续折腾
  • node里面配置一波

  • 重启服务器node
  • 规矩!

    apache反向代理

  • 还没完。。。。
  • 因为小程序后台接口是不允许ip或者端口的,而自己的后台接口是node写的,用的端口是8888。
  • 因为自己项目是前后端分离的,https默认端口443已经被apache占用了。咋办?
  • 只有用apache反向代理了
  • vim /etc/httpd/conf/httpd.conf
  • 在httpd.conf文件尾加入如下内容
# 反向代理
ProxyRequests Off
SSLProxyEngine on
# 正式
ProxyPass /api https://www.yangyuetao.cn:8888/api
ProxyPassReverse /api https://www.yangyuetao.cn:8888/api
# 测试
ProxyPass /api2 https://www.yangyuetao.cn:8889/api2
ProxyPassReverse /api2 https://www.yangyuetao.cn:8889/api2
#8888为apache的监听端口
<proxy  https://127.0.0.1>
    AllowOverride None
    Order Deny,Allow
    Allow from all
</proxy>
  • 这样配置后
  • 当请求https://www.yangyuetao.cn/api的时候,请求会自动变为https://www.yangyuetao.cn:8888/api
  • 而请求https://www.yangyuetao.cn/api2的时候,请求会自动变为https://www.yangyuetao.cn:888/api

安全

  • 关闭RC4弱密码套件https://www.cnblogs.com/pshell/p/7942059.html
  • 关闭SSLv3http://blog.sina.com.cn/s/blog_777f9dbb0102v8de.html
  • 检测https://myssl.com/

最后

大家好,这里是「 TaoLand 」,这个博客主要用于记录一个菜鸟程序猿的Growth之路。这也是自己第一次做博客,希望和大家多多交流,一起成长!文章将会在下列地址同步更新……
个人博客:www.yangyuetao.cn
小程序:TaoLand

目录
相关文章
|
5天前
|
网络协议 安全 网络安全
Introduction to the HTTP and HTTPS Protocol
HTTP protocol is the foundation of the Internet, and HTTPS is the secure version of HTTP. HTTP is an application layer protocol based on TCP/IP protocol. It does not involve packet (packet) transmission, mainly specifying the communication format between the client and the server, and the default po
55 25
|
1月前
|
缓存 应用服务中间件 Apache
HTTP 范围Range请求
HTTP范围请求是一种强大的技术,允许客户端请求资源的部分内容,提高了传输效率和用户体验。通过正确配置服务器和实现范围请求,可以在视频流、断点续传下载等场景中发挥重要作用。希望本文提供的详细介绍和示例代码能帮助您更好地理解和应用这一技术。
79 19
|
22天前
|
安全 搜索推荐 网络安全
HTTPS与HTTP:区别及安全性对比
HTTP和HTTPS是现代网络通信中的两种重要协议。HTTP为明文传输,简单但不安全;HTTPS基于HTTP并通过SSL/TLS加密,确保数据安全性和完整性,防止劫持和篡改。HTTPS还提供身份验证,保护用户隐私并防止中间人攻击。尽管HTTPS有额外的性能开销和配置成本,但在涉及敏感信息的场景中,如在线支付和用户登录,其安全性优势至关重要。搜索引擎也更青睐HTTPS网站,有助于提升SEO排名。综上,HTTPS已成为大多数网站的必然选择,以保障用户数据安全和合规性。
45 1
|
2月前
|
JSON JavaScript 前端开发
什么是HTTP POST请求?初学者指南与示范
HTTP POST请求是一种常用的HTTP方法,主要用于向服务器发送数据。通过合理设置请求头和请求主体,可以实现数据的可靠传输。无论是在客户端使用JavaScript,还是在服务器端使用Node.js,理解和掌握POST请求的工作原理和应用场景,对于Web开发至关重要。
296 18
|
2月前
|
应用服务中间件 Linux 网络安全
nginx安装部署ssl证书,同时支持http与https方式访问
为了使HTTP服务支持HTTPS访问,需生成并安装SSL证书,并确保Nginx支持SSL模块。首先,在`/usr/local/nginx`目录下生成RSA密钥、证书申请文件及自签名证书。接着,确认Nginx已安装SSL模块,若未安装则重新编译Nginx加入该模块。最后,编辑`nginx.conf`配置文件,启用并配置HTTPS服务器部分,指定证书路径和监听端口(如20000),保存后重启Nginx完成部署。
503 7
|
2月前
|
JSON 数据格式
.net HTTP请求类封装
`HttpRequestHelper` 是一个用于简化 HTTP 请求的辅助类,支持发送 GET 和 POST 请求。它使用 `HttpClient` 发起请求,并通过 `Newtonsoft.Json` 处理 JSON 数据。示例展示了如何使用该类发送请求并处理响应。注意事项包括:简单的错误处理、需安装 `Newtonsoft.Json` 依赖,以及建议重用 `HttpClient` 实例以优化性能。
81 2
|
2月前
|
安全 算法 网络安全
HTTP和HTTPS的区别
本文介绍HTTP与HTTPS的区别、HTTPS链接建立过程及常见加密算法。HTTP为明文传输,易被窃听;HTTPS通过SSL/TLS协议加密,确保数据安全。HTTPS使用端口443,提供认证机制。文中还详细讲解了对称加密(如AES、DES)和非对称加密(如RSA、ECC)算法的特点及应用场景。
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Found lingering reference异常 ERROR: Found lingering reference file hdfs://jiujiang1:9000/hbase/month_hotstatic/...
738 0
|
Web App开发 前端开发 Java
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
java链接MongoDB处理大量数据时经常碰到cursor not found 的异常,其实是超时所致 Exception in thread "main" com.
847 0