oneinstack+lnmp:nginx编译Nginx fastcgi_cache模块

宝塔面板,lnmp一键包,oneinstack,都是我们常用的生产环境,但如果你用到Nginx fastcgi_cache模块,那么宝塔是自带的,lnmp安装也非常简单,只有oneinstack需要编译安装,对于小白来说这个编译安装稍微麻烦点,这篇文章就来谈谈如何在oneinstack中安装Nginx fastcgi_cache模块!!

1、简介

oneinstack官网:https://oneinstack.com/

lnmp官网:https://lnmp.org/

2、安装

1)安装oneinstack,分为自动安装和交互安装,关于安装官网给出了非常详细的介绍,本文就不在赘述!

  • 自动安装:https://oneinstack.com/auto/
  • 交互安装:https://oneinstack.com/install/

2)lnmp安装官网介绍的也非常详细:https://lnmp.org/install.html

3、oneinstack编译Nginx fastcgi_cache模块

1)默认是不带这个模块的,但是还是可以使用命令来查看一下。

nginx -V 2>&1 | grep -o ngx_cache_purge

执行命令后,如果没有任何回显,则表示没有这个模块,如下:

root@racknerd-9960d1:~# nginx -V 2>&1 | grep -o ngx_cache_purge
root@racknerd-9960d1:~#

2)进入src目录开始下载ngx_cache_purge等,具体命令如下:

cd /root/oneinstack/src   
wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz
tar xzf ngx_cache_purge-2.3.tar.gz

3)还需要解压几个包,以下几个安装包都是Oneinstack自带的,不同版本的需要调整。

tar xzf nginx-1.20.1.tar.gz
tar xzf pcre-8.45.tar.gz
tar xzf openssl-1.1.1k.tar.gz
cd /root/oneinstack/src/nginx-1.20.1

具体如何查询这些版本呢,在进入/root/oneinstack/src 这个目录后执行ls命令即可看到。

4)使用nginx -V 查看参数,复制红框标注的地方,保存到你的记事本备用,然后在最后面加上--add-module=../ngx_cache_purge-2.3

5)具体的添加代码如下:

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.1.1k --with-pcre=../pcre-8.45 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=../ngx_cache_purge-2.3

6)编译,使用make命令

make

编译成功如图:

7)备份和替换nginx,使用如下命令:

mv /usr/local/nginx/sbin/nginx{,_`date +%F`}
cp objs/nginx /usr/local/nginx/sbin

8)使用nginx -V 2>&1 | grep -o ngx_cache_purge  命令查看模块,或者使用nginx -V也可以看到。

4、lnmp编译Nginx fastcgi_cache模块

1)和oneinstack一样可以先检查下是否默认安装了该模块,具体命令参考上面!

2)编辑lnmp安装包目录下的 lnmp.conf 文件,在Nginx_Modules_Options='  ' 的单引号中加上 –add-module=/root/ngx_cache_purge-2.3 保存,升级nginx即可,其他模块同理。具体如下:

先下载模块:

cd ~  #比如在root目录下载该模块
wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz
tar xzf ngx_cache_purge-2.3.tar.gz

紧接着修改lnmp.conf文件,路径/root/lnmp1.8

Download_Mirror='https://soft.vpser.net'

Nginx_Modules_Options='--add-module=/root/ngx_cache_purge-2.3'  #这里填入模块
PHP_Modules_Options=''

##MySQL/MariaDB database directory##
MySQL_Data_Dir='/usr/local/mysql/var'
MariaDB_Data_Dir='/usr/local/mariadb/var'
##Default website home directory##
Default_Website_Dir='/home/wwwroot/default'

Enable_Nginx_Openssl='y'
Enable_PHP_Fileinfo='n'
Enable_Nginx_Lua='n'
Enable_Swap='y'

3)升级nginx,具体如下:

官网给出的升级命令:https://lnmp.org/faq/lnmp1-2-upgrade.html

./upgrade.sh nginx 
Current Nginx Version:1.20.1
You can get version number from http://nginx.org/en/download.html
Please enter nginx version you want, (example: 1.18.0): 1.20.1
+---------------------------------------------------------+
|    You will upgrade nginx version to 1.20.1
+---------------------------------------------------------+
Press any key to start...or Press Ctrl+c to cancel

注意:以上操作均必须在lnmp安装包压缩包解压后的目录里运行,如lnmp1.7版本解压后的目录就是lnmp1.8或lnmp1.8-full

4)升级成功如下,检查模块依然是用上文的方法!

5)如升级失败,需恢复将 /usr/local/nginx/sbin/nginx.日期 的文件重命名为nginx ,然后再启动nginx即可。可以使用命令恢复如下:

cp /usr/local/nginx/sbin/nginx.20211107121851 /usr/local/nginx/sbin/nginx

注意:备份的niginx是按照时间命名,请注意修改!!此外,Nginx升级为平滑升级,升级过程不影响nginx的运行。

5、最后

本文介绍了oneinstack和lnmp如何编译Nginx fastcgi_cache模块,如果对这个模块有需要的童鞋,可以参考,至于宝塔,因为默认安装了该模块,所以就不多做介绍了。

广告栏+++++++蜜糖商店|大哥云| 搬瓦工JMS|红莓网络| Mielink|萌喵加速| 飞鸟云

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注