lnmp升级nginx支持http2

随着chorme和firefox的更新,网址前面加上https显得格外重要,于是就申请了证书,上了https,不过让老何一直耿耿于怀的是,不支持http2,在conf上配置之后,会提示错误,只能使用https 1.1

本着折腾的精神,使劲搜索资料,终于折腾成功,下面把过程简单说一下。

老何博客是建立在阿里云的ecs上,系统是centos 6.8 32位,网站的集成运行环境是lnmp 1.3.

根据资料,http2需要nginx 1.9.7以上的版本,openssl需要1.0.2版。

升级nginx的过程很简单,一条命令就可以搞定,./upgrade.sh nginx,输入最新版本1.11.10,回车,很顺利地升级了。

openssl是系统自身有的,centos只有1.0.1e,升级时也找了好多教程,最后升级成1.0.2g,本想就能上h2了,但是nginx却无法启动。好在阿里云有快照功能,否则真是惨了。(此原因应该是openssl的lib没有和nginx挂载,导致nginx无法重启,但是有不知道如何去解决。)

回滚到最近的版本,逐一试验,一旦升级openss,nginx就重启不了。事情进入了死胡同。

再次疯狂搜索,发现有一个重要提示:

如果你用的是其他环境可以自己去 https://www.openssl.org/source/ 下载openssl
1.0.2版本的源码,在nginx编译时加上--with-openssl=openssl解压后的源码目录。

于是下载并解压openss 1.0.2,在编译参数后面加上--with-openssl=/root/openssl1.0.2g,再次编译nginx,发现版本号仍然是1.0.1e,无语,军哥(lnmp作者)给出答案是,此编译只影响nginx,并不影响系统的openssl版本,重新配置conf文件,重启nginx,终于提示用上了http2.

开心~哈哈

已有 16 条评论

  1. 黑暗游侠

    推荐换成oneinstack环境

    黑暗游侠 · 回复
    1. Mr.He

      刚才看了一下,差不多的东西吧,年龄大了,再学习成本较高,哈哈

      Mr.He · 回复
  2. 半山马

    老何这博客运营成本不少哦,阿里云ECS哦,话说我一直用88大洋的虚拟主机也感觉够够的^_^

    半山马 · 回复
    1. Mr.He

      只要稳定,什么都可以

      Mr.He · 回复
      1. Kay

        我记得你之前用的是腾讯云吧

        Kay · 回复
        1. Mr.He

          没有,腾讯云一直没有用过

          Mr.He · 回复
  3. 老杨

    网页端怎么看是不是 http2? TLS 1.2?阿里云光跑 TP 好像有点浪费,哈哈。

    老杨 · 回复
    1. Mr.He

      在chrome浏览器输入chrome://net-internals/#http2
      火狐浏览器添加插件HTTP/2 and SPDY indicator
      就能看到是不是http2了

      Mr.He · 回复
  4. 钛客志

    虚拟主机能不能支持HTTP2?

    钛客志 · 回复
    1. Mr.He

      有些支持,这个你问一下服务商。

      Mr.He · 回复
  5. 何先生

    我都换成宝塔的环境了,比军哥的还简单,更新也快,

    何先生 · 回复
    1. Mr.He

      宝塔我也用过,可视环境不错,好像耗资源多一点,我是阿里云低配

      Mr.He · 回复
  6. 掩耳

    我果断时间也上全站SSL!

    掩耳 · 回复
    1. Mr.He

      挺方便的,看着小绿锁,觉得逼格又高了一层...

      Mr.He · 回复
  7. 星球彦

    HTTP2的作用是不是增加了加密?作用大么

    星球彦 · 回复
    1. Mr.He

      加密传输,防止网址被劫持。

      Mr.He · 回复

发表新评论

关于博主
博主本姓何,育人二十载。
我住长江边,君自四海来。
文字不修饰,实是无文才。
飞絮落叶雪,只待梨花开。
博客分类
随机推荐
最近评论
站点统计
  • 文章总数:176篇
  • 评论总数:4654条
  • 网站运行:1388天