NGINX+LUA编译安装

1. 安装依赖软件包

首先,使用 yum 安装一些必要的软件包:

复制代码
yum install -y wget
yum install gcc zlib zlib-devel pcre-devel openssl openssl-devel readline-devel -y
  • wget: 用于下载文件的工具。
  • gcc: C 编译器,用于编译源代码。
  • zlib: 压缩库。
  • pcre: Perl 兼容正则表达式库。
  • openssl: 用于处理 SSL/TLS 的库。

2. 下载和解压 Nginx 源代码

下载指定版本的 Nginx 源代码并解压:

复制代码
wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -zxvf nginx-1.12.2.tar.gz

3. 下载和安装 LuaJIT

下载 LuaJIT 的源代码,解压并安装:

复制代码
wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz
tar -zxvf LuaJIT-2.0.5.tar.gz
cd LuaJIT-2.0.5
make install PREFIX=/usr/local/LuaJIT
cd ..
  • make install PREFIX=/usr/local/LuaJIT 将 LuaJIT 安装到 /usr/local/LuaJIT 目录下。

4. 设置环境变量

将 LuaJIT 的库和头文件路径导出为环境变量:

复制代码
export LUAJIT_LIB=/usr/local/LuaJIT/lib
export LUAJIT_INC=/usr/local/LuaJIT/include/luajit-2.0
source /etc/profile

这些变量将帮助编译器找到 LuaJIT 的库和头文件。

5. 下载和解压 Nginx 模块

下载 ngx_devel_kitlua-nginx-module 的源代码:

复制代码
wget https://github.com/simplresty/ngx_devel_kit/archive/v0.3.0.tar.gz
tar zxvf v0.3.0.tar.gz

wget https://github.com/openresty/lua-nginx-module/archive/v0.10.13.tar.gz
tar zxvf v0.10.13.tar.gz

6. 配置 Nginx

进入 Nginx 目录,配置 Nginx 以使用 LuaJIT 和其他模块:

复制代码
cd nginx-1.12.2
./configure --prefix=/usr/local/nginx \
  --with-http_v2_module \
  --with-http_stub_status_module \
  --with-http_ssl_module \
  --with-http_realip_module \
  --with-http_sub_module \
  --with-http_gzip_static_module \
  --with-pcre \
  --with-ld-opt=-Wl,-rpath,/usr/local/LuaJIT/lib \
  --add-module=../ngx_devel_kit-0.3.0 \
  --add-module=../lua-nginx-module-0.10.13
  • --prefix 指定 Nginx 的安装路径。
  • --with-* 选项用于启用特定模块。
  • --with-ld-opt 添加库路径。
  • --add-module 选项用于添加第三方模块。

7. 编译和安装

最后编译和安装 Nginx:

复制代码
make -j2
make install
  • make -j2 指定使用两个线程并行编译,加快编译速度。
  • make install 将编译完成的 Nginx 安装到指定路径。
相关推荐
豆沙沙包?25 分钟前
8.学习笔记-Maven进阶(P82-P89)
笔记·学习·maven
刘婉晴7 小时前
【信息安全工程师备考笔记】第三章 密码学基本理论
笔记·安全·密码学
晓数9 小时前
【硬核干货】JetBrains AI Assistant 干货笔记
人工智能·笔记·jetbrains·ai assistant
我的golang之路果然有问题9 小时前
速成GO访问sql,个人笔记
经验分享·笔记·后端·sql·golang·go·database
lwewan9 小时前
26考研——存储系统(3)
c语言·笔记·考研
搞机小能手10 小时前
六个能够白嫖学习资料的网站
笔记·学习·分类
nongcunqq11 小时前
爬虫练习 js 逆向
笔记·爬虫
汐汐咯11 小时前
终端运行java出现???
笔记
无敌小茶12 小时前
Linux学习笔记之环境变量
linux·笔记
帅云毅13 小时前
Web3.0的认知补充(去中心化)
笔记·学习·web3·去中心化·区块链