在编译前需安装必要的开发工具和依赖库:
bashyum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel wget vim
• 说明:
• gcc
和 make
是编译代码的基础工具。
• pcre
支持正则表达式解析,用于 Nginx 的 URL 路由功能。
• zlib
用于 HTTP 内容压缩(如 Gzip)。
• openssl
提供 SSL/TLS 加密支持,启用 HTTPS 必备。
下载指定版本源码:
bashwget -c http://nginx.org/download/nginx-1.21.6.tar.gz
若未安装
wget
,可先执行yum install -y wget
。
解压并进入源码目录:
bashtar -zxvf nginx-1.21.6.tar.gz
cd nginx-1.21.6
根据需求自定义编译选项:
bash./configure \
--prefix=/usr/local/nginx \ # 指定安装路径
--user=nginx \ # 运行用户
--group=nginx \ # 运行用户组
--with-http_ssl_module \ # 启用SSL模块(支持HTTPS)
--with-http_stub_status_module # 启用状态监控模块
• 可选参数:
• --with-stream
:支持 TCP/UDP 代理。
• --with-http_v2_module
:启用 HTTP/2 协议。
• 使用 ./configure --help
查看所有支持模块。
编译并安装:
bashmake && make install
此过程可能耗时数分钟,取决于服务器性能。
创建 Nginx 用户(非 root 运行时需配置):
bashuseradd -s /sbin/nologin -M nginx
启动服务:
bash/usr/local/nginx/sbin/nginx
验证安装:
• 访问 http://服务器IP
,若显示 Nginx 欢迎页即成功。
• 检查进程:
bashps -ef | grep nginx
推荐使用 systemd
管理服务:
bashvim /usr/lib/systemd/system/nginx.service
ini[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
bashsystemctl daemon-reload
systemctl enable nginx
systemctl start nginx
listen
端口。bashfirewall-cmd --permanent --add-port=80/tcp firewall-cmd --reload
• 编译依赖库和用户创建参考自 。
• 开机自启配置参考 。
• 模块参数和 SSL 支持详见 。
本文作者:GYC
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!