https网站源码分享?

大家好,今天小编来为大家解答以下的问题,关于https网站源码分享,这个很多人还不知道,现在让我们一起来看看吧!

原因

现在网站使用HTTPS是规范操作之一,前些日子买了腾讯云服务,同时申请了域名http://www.asap2me.top/,目前该域名只支持HTTP,想升级为HTTPS。关于HTTPS的链接过程大家可以看我的这篇文章HTTPS连接过程。

使用http访问是正常的:

使用https访问报错:

环境

目前环境是:Centos7.6

Web服务:GoLang

Web服务端口号:8080

操作

因为Web服务是GoLang写的,所以思路是搭建Nginx反向代理,Nginx上配置证书,将请求代理到Go服务上。

申请证书

申请证书的方案很多,可以从Let&34;ssl&usernobody;\nworker_processes1;\nerror_loglogs/error.lognotice;\npidlogs/nginx.pid;\nevents{\nworker_connections1024;\n}\nhttp{\nincludemime.types;\ninclude/usr/local/nginx/conf/vhost/*.conf;\ndefault_typeapplication/octet-stream;\n39;$remote_addr-$remote_user[$time_local]&34;&&34;$http_referer&39;\n39;&34;&34;&access_loglogs/access.logmain;\nsendfileon;\nkeepalive_timeout0;\nkeepalive_timeout65;\ncharsetkoi8-r;\nlocation/{\nindexindex.htmlindex.htm;\nerror_page404/404.html;\n\nerror_page500502503504/50x.html;\nlocation=/50x.html{\nroothtml;\n}\n}\n\n}

对于这个配置,有几个地方需要说明一下:

listen443ssl;监听443端口include/usr/local/nginx/conf/vhost/*.conf;创建vhost目录,里面存放其他配置文件ssl配置ssl_certificate/usr/local/nginx/ssl/asap2me.crt;ssl_certificate_key/usr/local/nginx/ssl/asap2me.key;ssl_session_cacheshared:SSL:10m;ssl_session_timeout5m;ssl_protocolsTLSv1.2TLSv1.1TLSv1;ssl_ciphersHIGH:!aNULL:!MD5;ssl_prefer_server_cipherson;请求转发location/{proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$http_x_forwarded_for;proxy_passhttp://go_backend;}

go_backend的配置如下,go_back_upstream.conf

upstreamgo_backend{\nserver127.0.0.1:8080weight=1max_fails=2fail_timeout=10s;\n}

验证

现在让我们验证一下效果:

http正常

https正常

总结

将http升级为https,分如下几步

申请证书将证书存放到代理机器上不同代理,如Nginx、Apache、Tomcat,做对应的配置验证

资料

快速签发Let'sEncrypt证书指南https://www.cnblogs.com/esofar/p/9291685.htmlHTTPS免费证书申请和应用https://cloud.tencent.com/document/product/627/41141?from=information.detail.%E8%85%BE%E8%AE%AF%E4%BA%91%E4%B8%8B%E8%BD%BDhttps%E8%AF%81%E4%B9%A6域名型(DV)免费证书申请流程https://cloud.tencent.com/document/product/400/6814后端服务轻松切换HTTPShttps://www.songma.com/news/txtlist_i25496v.htmlCentOS7安装Nginxhttps://www.cnblogs.com/boonya/p/7907999.htmlhttps://www.cnblogs.com/ghjbk/p/6744131.htmlngx_http_ssl_module

最后

大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)

我的个人博客为:https://shidawuhen.github.io/

往期文章回顾:

技术

Go通道实现原理Go定时器实现原理HTTPS连接过程限流实现2秒杀系统分布式系统与一致性协议微服务之服务框架和注册中心Beego框架使用浅谈微服务TCP性能优化限流实现1Redis实现分布式锁Golang源码BUG追查事务原子性、一致性、持久性的实现原理CDN请求过程详解常用缓存技巧如何高效对接第三方支付Gin框架简洁版InnoDB锁与事务简析算法总结

读书笔记

资治通鉴敏捷革命如何锻炼自己的记忆力简单的逻辑学-读后感热风-读后感论语-读后感孙子兵法-读后感

思考

项目流程管理对项目管理的一些看法对产品经理的一些思考关于程序员职业发展的思考关于代码review的思考Markdown编辑器推荐-typora

文章到此结束,如果本次分享的https网站源码分享和的问题解决了您的问题,那么我们由衷的感到高兴!

Published by

风君子

独自遨游何稽首 揭天掀地慰生平