百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

网站升级HTTPS与HTTP2记录 穿越火线雷神升级活动网站

suiw9 2024-11-10 13:02 82 浏览 0 评论

最近看到两篇文章对于HTTPS与HTTP2两者讲解的很详细,分享并实践一下,正好近期捣鼓了一个工具类站点https://www.itoolshub.com/,可以用来实验.

文章地址

为什么要把网站升级到HTTPS

怎样把网站升级到http/2

升级HTTPS

升级的好处如文章所说,另外这里主要是按照文章中的教程来处理,不过我的服务器是Centos7,大体步骤相同,选择操作系统与服务器后会到该页面https://certbot.eff.org/#centosrhel7-nginx.

要注意sudo certbot --nginx命令,该命令默认会去usr/bin/nginx/etc/nginx下寻找nginx启动文件与配置文件,因此如果你的nginx位置不对就会报not install错误,导致无法进行,解决方案为使用软链接形式创建链接.

Bash
12
Bash
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginxln -s /usr/local/nginx/conf/ /etc/nginx

命令都执行完后,nginx的server节点下会多出如下配置,第一部分为监听443端口.即https默认端口,使用该证书.第二部分是对非https请求重定向到https.这样也就学到了nginx是怎么配置https请求.

Bash
123456789
Bash
listen 443 ssl; # managed by Certbotssl_certificate /etc/letsencrypt/live/itoolshub.com/fullchain.pem; # managed by Certbotssl_certificate_key /etc/letsencrypt/live/itoolshub.com/privkey.pem; # managed by Certbotinclude /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbotssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbotif ($scheme != "https") {return 301 https://$host$request_uri;} # managed by Certbot

升级HTTP2

正如原作者所说HTTP2具有太多的优势,比如多路复用,对同一个域的服务器只建立一次TCP连接,加载多个资源,使用二进制帧传输,同时会对http头部进行压缩,大大提高了传输的效率.

要注意的是

Nginx启用http2则需要安装http_v2_module模块,并且需要openssl版本大于1.0.2,由于Chrome改变了验证http2的方式,详情可以参考此文章https://news.cnblogs.com/n/545972/.

推荐做法

nginx的模块是支持静态编译的,因此自己下载所需要的软件版本,然后编译时指定配置相应的版本是最佳解决方案.如下脚本,我配置了http_v2_module/opt/openssl-OpenSSL_1_0_2k的版本,这样nginx编译时则不会去使用系统自带的openssl.注意不要make install,该命令是会执行安装操作,也就是会把你之前安装的nginx覆盖掉.

Bash
123456789101112131415161718
Bash
./configure \--prefix=/usr/local/nginx \--conf-path=/etc/nginx/nginx.conf \--pid-path=/var/local/nginx/nginx.pid \--lock-path=/var/lock/nginx/nginx.lock \--error-log-path=/quding/logs/nginx/error.log \--http-log-path=/quding/logs/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \--with-http_ssl_module \--http-scgi-temp-path=/var/temp/nginx/scgi \--with-http_v2_module \--with-openssl=/opt/openssl-OpenSSL_1_0_2kecho 'make start...'make

脚本执行完毕后,手动copy nginx替换原nginx,使用nginx -V查看所使用的openssl版本信息,如下所示则不会有大问题.

最后在https监听那里加上http2,nginx reload下即可.

Bash
1
Bash
listen 443 ssl http2;

对于chrome最可信的调试方式是访问chrome://net-internals/#http2,如果显示你的网站使用的协议为h2,那么恭喜你开启了http2

目前https://www.itoolshub.com/已经开启了HTTPS与HTTP2.但是图片是放在七牛云的,七牛的HTTPS收费,所以目前没解决,由于图片并不是很多后期迁到自己的服务器上,或者使用base64形式.

相关推荐

5款Syslog集中系统日志常用工具对比推荐

一、为何要集中管理Syslog?Syslog由Linux/Unix系统及其他网络设备生成,广泛分布于整个网络。因其包含关键信息,可用于识别网络中的恶意活动,所以必须对其进行持续监控。将Sys...

跨平台、多数据库支持的开源数据库管理工具——DBeaver

简介今天给大家推荐一个开源的数据库管理工具——DBeaver。它支持多种数据库系统,包括Mysql、Oracle、PostgreSQL、SLQLite、SQLServer等。DBeaver的界面友好...

强烈推荐!数据库管理工具:Navicat Premium 16.3.2 (64位)

NavicatPremium,一款集数据迁移、数据库管理、SQL/查询编辑、智能设计、高效协作于一体的全能数据库开发工具。无论你是MySQL、MariaDB、MongoDB、SQLServer、O...

3 年 Java 程序员还玩不转 MongoDB,网友:失望

一、什么场景使用MongoDB?...

拯救MongoDB管理员的GUI工具大赏:从菜鸟到极客的生存指南

作为一名在NoSQL丛林中披荆斩棘的数据猎人,没有比GUI工具更称手的瑞士军刀了。本文将带你围观五款主流MongoDB管理神器的特性与暗坑,附赠精准到扎心的吐槽指南一、MongoDBCompass:...

mongodb/redis/neo4j 如何自己打造一个 web 数据库可视化客户端?

前言最近在做neo4j相关的同步处理,因为产线的可视化工具短暂不可用,发现写起来各种脚本非常麻烦。...

solidworks使用心得,纯干货!建议大家收藏

SolidWorks常见问题...

统一规约-关乎数字化的真正实现(规范统一性)

尽管数字化转型的浪潮如此深入人心,但是,对于OPCUA和TSN的了解却又甚少,这难免让人质疑其可实现性,因为,如果缺乏统一的语义互操作规范,以及更为具有广泛适用的网络与通信,则数字化实际上几乎难以具...

Elasticsearch节点角色配置详解(Node)

本篇文章将介绍如下内容:节点角色简介...

产前母婴用品分享 篇一:我的母婴购物清单及单品推荐

作者:DaisyH8746在张大妈上已经混迹很久了,有事没事看看“什么值得买”已渐渐成了一种生活习惯,然而却从来没有想过自己要写篇文章发布上来,直到由于我产前功课做得“太过认真”(认真到都有点过了,...

比任何人都光彩照人的假期!水润、紧致的肌肤护理程序

图片来源:谜尚愉快的假期临近了。身心振奋的休假季节。但是不能因为这种心情而失去珍贵的东西,那就是皮肤健康。炙热的阳光和强烈的紫外线是使我们皮肤老化的主犯。因此,如果怀着快乐的心情对皮肤置之不理,就会使...

Arm发布Armv9边缘AI计算平台,支持运行超10亿参数端侧AI模型

中关村在线2月27日消息,Arm正式发布Armv9边缘人工智能(AI)计算平台。据悉,该平台以全新的ArmCortex-A320CPU和领先的边缘AI加速器ArmEthos-U85NPU为核心...

柔性——面向大规模定制生产的数字化实现的基本特征

大规模定制生产模式的核心是柔性,尤其是体现在其对定制的要求方面。既然是定制,并且是大规模的定制,对于制造系统的柔性以及借助于数字化手段实现的柔性,就提出了更高的要求。面向大规模定制生产的数字化业务管控...

创建PLC内部标准——企业前进的道路

作者:FrankBurger...

标准化编程之 ----------- 西门子LPMLV30测试总结

PackML乃是由OMAC开发且被ISA所采用的自动化标准TR88.00.02,能够更为便捷地传输与检索一致的机器数据。PackML的主要宗旨在于于整个工厂车间倡导通用的“外观和感觉”,...

取消回复欢迎 发表评论: