前言

其实 HTTP/2 应该是 2015 年的老话题了(2015 年 5 月 14 日 HTTP/2 协议正式版的发布),但是 2018 年都到了很多网站依旧没有使用,作为新一代互联网协议,HTTP/2 不仅速度比目前常见的 HTTP/1.1 更快,而且更加安全。 不过,也正是因为安全(依赖 HTTPS)所以 HTTP/2 的设置略为复杂导致很多网站都没有用上。

这里就将为大家介绍如何 10分钟 轻松设置出 HTTP/2 网站。

介绍

HTTP 2.0 即超文本传输协议 2.0,是下一代 HTTP 协议。是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis (httpbis)工作小组进行开发。是自1999年http1.1发布后的首个更新。

HTTP/2 协议是从 SPDY 演变而来,SPDY 已经完成了使命并很快就会退出历史舞台(例如 Chrome 将在「2016 年初结束对 SPDY 的支持」;Nginx、Apache 也已经全面支持 HTTP/2 ,并也不再支持 SPDY)。

一般的大家把 HTTP2 简称为 h2,尽管有些朋友可能不怎么愿意,但是这个简称已经默认化了,特别是体现在浏览器对 HTTP2 都是这个简写的。

要求 & 收获

需要使用到的产品:

  1. ECS/轻量应用服务器(安装任意 Linux 发行版镜像)
  2. SSL 证书 (Let's Encrypt 证书 或者 阿里云免费提供的赛门铁克证书)

通过本文你将讲学到:

  1. 设置 Nginx 的 HTTPS 操作
  2. 设置 Nginx 的 HTTP/2 操作
  3. 拥有一个 HTTP/2 网站

如果你是大学生且还没有 ECS,可以使用:

云翼计划

学生用户可以在阿里云官网上进行学生认证后购买一定配置的ECS,仅需9.9元每月,学生用户无需担心花费过多用在服务器的问题。

学生用户在经过学生认证过后就可以在相关网址进行购买,网址为:

https://promotion.aliyun.com/ntms/campus2017.html

买好了服务器就可以去刚刚注册好的账号管理里的管理控制台去查看服务器以及它的一些配置。

如果你有较好的芝麻信用分记录且还没有 ECS,可以使用:

阿里云免费套餐:

个人新用户可以在 云栖社区聚能聊 获取免费产品邀请码(还有其他丰厚礼品),免费体验 7 款阿里云明星产品六个月的使用资格:https://free.aliyun.com/

企业新用户完成企业认证可以可以费体验 10 款阿里云明星产品六个月的使用资格:https://free.aliyun.com/

教程

一、 参考 【云计算的1024种玩法】手把手教你如何编译升级 OpenResty 编译 OpenResty 软件作为 Web 服务器软件,教程还是比较简单的。

二、 首先申请 SSL 证书,HTTPS 依赖于 SSL 证书,可以通过 (【云计算的1024种玩法】使用阿里云解析 + RAM 快速签署 Let's Encrypt 证书 或者 阿里云免费提供的赛门铁克证书) 这两个教程来申请证书。 预计耗时 8 分钟。

三、 做完准备工作,我们就要开始为虚拟主机设置 HTTPS + HTTP/2 了!

这里我们以 www.mf8.biz 为例,下面是 HTTPS 虚拟主机配置文件:

server {##开启 HTTPS 和 HTTP/2listen 443 ssl http2;ssl_certificate /usr/local/openresty/nginx/conf/ssl/www.mf8.biz.crt; #改为SSL证书绝对路径位置ssl_certificate_key /usr/local/openresty/nginx/conf/ssl/www.mf8.biz.key; #改为SSL密钥绝对路径位置##SSL增强安全设置部分add_header Strict-Transport-Security max-age=15768000; #HSTS设置ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5;ssl_prefer_server_ciphers on;ssl_session_timeout 10m;ssl_session_cache builtin:1000 shared:SSL:10m;ssl_buffer_size 1400;ssl_stapling on;ssl_stapling_verify on;### 下面的部分根据网站需求为异,只要上面的内容有基本上都能兼容各种网站的 HTTPS 设置server_name www.mf8.biz mf8.biz; # 改为您自己的域名access_log off;index index.html index.htm index.php;root /data/wwwroot/mf8; # 改为您自己的网站目录位置##PHPlocation ~ [^/]\.php(/|$) {fastcgi_pass unix:/run/php/php7.1-fpm.sock; ## 改为您自己的 php-fpm 版本号fastcgi_index index.php;include fastcgi.conf;fastcgi_param PHP_VALUE "open_basedir=$document_root:/tmp/:/proc/";}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {expires 30d;access_log off;}location ~ .*\.(js|css)?$ {expires 7d;access_log off;}location ~ /\.ht {deny all;}
}

将配置文件中的所有带 # 的注释中所在的行,改为您自己的域名、文件路径等内容。 然后保存到 /usr/local/openresty/nginx/vhost/您的域名.conf 文件中。

通过:

nginx -t

命令查看配置是否正确,如果有错误就根据提示文件所在的行修改错误内容。没有错误提示的话,重启即可:

nginx -s reload

预计耗时 2 分钟。

跑分

然后我们可以到 https://www.ssllabs.com/index.html 可以对进行网站 HTTPS 的跑分测试,并检查 HTTP/2 对各环境的兼容性,根据我提供的配置文件这么一番下来肯定是 A+!

【云计算的1024种玩法】10分钟轻松设置出 A+ 评分的 HTTP/2 网站相关推荐

  1. 【云计算的1024种玩法】云端打造家庭文件备份中心

    摘要: 其实ECS的用途其实非常广泛,不仅仅是用于建设网站,这里介绍的就是使用ECS打造家庭文件备份中心. 我们这里使用的软件是Syncthing,其所有的信息通讯都会用TLS进行加密,Syncthi ...

  2. 【云计算的1024种玩法】回忆经典,用虚拟主机重建复古DZ和无心宠物

    前言 在移动互联网和大型网游没有普及前,很多地方论坛或者专业性论坛都会有一个 -- "无心宠物" 插件来引流和吸引用户,可以说是当下网页游戏的老前辈了.还记得我以前就是为了玩这个游 ...

  3. 【云计算的1024种玩法】自己搭游戏服务器:我的世界Minecraft

    <我的世界>(Minecraft)是一款风靡全世界的 沙盒游戏.玩家可以独自一人或与朋友们一起自由冒险,探索随机生成的世界,创造令人惊叹的奇迹. 玩游戏当然少不了一台"游戏机&q ...

  4. 【云计算的1024种玩法】打造个人专属网盘

    作为一个学生,需要经常看文献,积累知识,可是论文多了以后就有了论文保存和分类的相关问题.因此需要一个个人网盘存储论文,这样就可以做到通过在线登录个人网盘,实现对网盘文档的在线阅读和管理. 然而在自己的 ...

  5. 【云计算的1024种玩法】轻松将其他云的对象储存迁移至阿里云OSS

    前言 当使用了像 OSS.S3 这样的开放对象储存的 PaaS 产品后,一面上体验到了网站核心同附件库分离的安全性.高性能以及免维护的便利性,一面上却又怕在一个厂家的对象储存上扎根了就无法迁移,会被厂 ...

  6. 【云计算的1024种玩法】巧用迁云工具轻松实现服务器迁移到ECS

    摘要: 很多时候如何将服务器迁移到阿里云的ECS成了很多用户上云之路的拦路虎,特别是在本地操作系统中已经有了非常复杂的软件部署这时候迁移上云或者在不同公有云之间迁移就让不少人犹豫不决了. 阿里云提供的 ...

  7. 【云计算的1024种玩法】一.半小时轻松搭建属于自己的Discuz论坛

    半小时轻松搭建属于自己的Discuz论坛 简介: 操作步骤: 一.远程到创建的服务器内部 1.使用远程工具登陆到服务器中 二.安装WEB服务-Apache 2.1 安装Apache服务 2.2 启动h ...

  8. 【Microsoft Azure 的1024种玩法】七十四.五分钟在Azure Virtual Machines中快速部署一套软件项目管理及自动构建工具

    [简介] Apache Maven由 Apache 软件基金会所提供的一个软件项目管理及自动构建工具,Maven 为开发者提供了一套完整的构建生命周期框架.开发团队几乎不用花多少时间就能够自动完成工程 ...

  9. 【Microsoft Azure 的1024种玩法】二十四.通过Azure Front Door 的 Web 应用程序防火墙来对 OWASP TOP 10 威胁进行防御

    [简介] 我们都知道像 SQL 注入.跨站点脚本攻击(XSS)之类的恶意攻击以及 OWASP 发现的十大威胁都可能会导致服务中断或数据丢失,让 Web 应用程序所有者受到巨大威胁.那么如何有效的解决O ...

最新文章

  1. 进程间通信:同步双工管道
  2. PostgreSQL 电商业务(任意维度商品圈选应用) - json包range数组的命中优化 - 展开+索引优化...
  3. c# 获取所有的进程的cpu使用率_Linux CPU使用率很高,但为啥却找不到高CPU的进程
  4. C++动态数组(转)
  5. 漫画:什么是HashMap?
  6. 服务器测试网址填写注意事项
  7. fasterrcnn论文_【每周CV论文推荐】 深度学习人脸检测入门必读文章
  8. random是python标准库吗_python标准库介绍——27 random 模块详解
  9. 机器学习中的偏差和方差理解
  10. 网易云音乐云打卡平台源码
  11. 大数据分析的“数据来源”有哪些?
  12. 代码审计:审计思路之实例解说全文通读
  13. chrome滚动条样式修改
  14. Logstash同步数据
  15. LayUI_02 前端框架 页面元素
  16. Android使用NFC模拟M卡实现 (二)
  17. 艾瑞发布《2021 年全球互联网通信云行业研究报告》,融云持续领跑市场
  18. 【渝粤教育】国家开放大学2018年秋季 0686-21T广告创意与表现(一) 参考试题
  19. (三)流体运动学(质量守恒)
  20. Mcafee 8.5i杀毒软件规则配置2008-01-27 19:06mcafee 8.5i杀毒软件规则配置

热门文章

  1. Java Web项目 配置 ueditor心得
  2. windows froms 程序打包 (转载)
  3. 【Java】身份证的验证
  4. Servlet的使用你掌握多少?
  5. inner join 与 left join 之间的区别
  6. Linux服务器性能监控工具
  7. 360云台智能看家存储在哪_新品360智能摄像机云台变焦版,惊喜改变可不止一点点...
  8. 08-02 性能测试--负载模型与压力来源
  9. 3个月内通过7轮面试,程序员拿到谷歌offer后却被女友威胁......
  10. javascript 近乎神话般的概念:闭包