前言
在前面的《Ubuntu 编译安装 OpenResty 及拓展支持》已经介绍过如何安装 OpenResty 了,不过类似上面安装的教程那么多,但是升级的教程就不太多了。作为一个对你负责的教程,搞坏了你的服务器,就要搞好它~
教程
定义版本
为了后面的维护方便,继续定义版本,这里将版本修改成妖更新的新的软件版本号。# VersionOpenSSLVersion='openssl-1.0.2l';NginxCTVersion='1.3.2';PageSpeedVersion='1.12.34.2';SystemBit='X64';OpenRestyVersion='openresty-1.11.2.3';
注: 截止本次更新,OpenResty 1.11.2 版本最高只能搭配 OpenSSL 1.0.2。
上述软件版本更新查看:
OpenSSL、
Nginx-CT、
PageSpeed、
OpenResty
下载源码
cd /root/src
wget https://github.com/grahamedgecombe/nginx-ct/archive/v$NginxCTVersion.tar.gz
tar xzf v$NginxCTVersion.tar.gz
git clone https://github.com/google/ngx_brotli.git
cd ngx_brotli
git submodule update --init
cd ../
wget https://github.com/pagespeed/ngx_pagespeed/archive/v$PageSpeedVersion-beta.zip
unzip v$PageSpeedVersion-beta.zip
cd ngx_pagespeed-$PageSpeedVersion-beta/
wget https://dl.google.com/dl/page-speed/psol/$PageSpeedVersion-$SystemBit.tar.gz
tar -xzvf $PageSpeedVersion-$SystemBit.tar.gz
cd ../
wget -c https://openresty.org/download/$OpenRestyVersion.tar.gz
tar zxf $OpenRestyVersion.tar.gz
升级
cd $OpenRestyVersion
./configure --prefix=/usr/local/openresty \
--user=www-data --group=www-data \
--add-module=../ngx_brotli \
--add-module=../nginx-ct-$NginxCTVersion \
--add-module=../ngx_pagespeed-$PageSpeedVersion-beta \
--with-http_v2_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-ld-opt='-ljemalloc'
make
mv /usr/local/openresty/nginx/sbin/nginx{,`date +%m%d`}
nginx.old #备份现有nginx
make install
kill -USR2 `cat /run/openresty.pid`
sleep 1
kill -QUIT `cat /run/openresty.pid.oldbin`
解释
make 之后,运
行mv /usr/local/openresty/nginx/sbin/nginx{,`date +%m%d`}
是为了备份旧的二进制 Nginx 文件。
为什么还要运行 make install 呢?因为不同于 Nginx,OpenResty 除了 Nginx Core,还有luajit等等内容,所以还是要通过 make install。
kill -USR2 `cat /run/openresty.pid`
是为了删除旧版本的运行进程。
查看
运行下面命令,查看现有
nginx.conf 文件是否符合现有版本的要求。
ngint -t
然后通过下面命令,查看版本是有已经更新至最新版本。
nginx -V
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。