Nginx怎么编译并安装

发布时间:2022-04-27 14:15:28 作者:iii
来源:亿速云 阅读:129
# Nginx怎么编译并安装

Nginx是一款高性能的HTTP和反向代理服务器,以其稳定性、丰富的功能集和低资源消耗而闻名。本文将详细介绍如何从源代码编译并安装Nginx。

## 准备工作

在开始编译安装之前,请确保系统已安装必要的依赖工具和库:

```bash
# Ubuntu/Debian
sudo apt update
sudo apt install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# CentOS/RHEL
sudo yum groupinstall "Development Tools"
sudo yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel

下载Nginx源代码

访问Nginx官网下载最新稳定版(以1.25.3为例):

wget https://nginx.org/download/nginx-1.25.3.tar.gz
tar -zxvf nginx-1.25.3.tar.gz
cd nginx-1.25.3

配置编译选项

运行configure脚本配置编译参数(常用选项):

./configure \
--prefix=/usr/local/nginx \          # 安装目录
--sbin-path=/usr/sbin/nginx \        # 可执行文件路径
--conf-path=/etc/nginx/nginx.conf \  # 配置文件路径
--pid-path=/var/run/nginx.pid \     # PID文件路径
--with-http_ssl_module \             # 启用SSL模块
--with-http_v2_module \              # 启用HTTP/2支持
--with-http_realip_module \          # 启用真实IP模块
--with-threads \                     # 启用线程支持
--with-stream                        # 启用TCP/UDP代理

可通过./configure --help查看所有可用选项。配置完成后会生成Makefile文件。

编译和安装

make            # 编译
sudo make install  # 安装

安装完成后,主要文件结构:

/usr/local/nginx/
├── sbin/nginx          # 主程序
├── conf/nginx.conf     # 主配置文件
├── logs/               # 日志目录
└── html/               # 默认网页目录

验证安装

检查版本信息:

nginx -v

测试配置文件:

nginx -t

创建系统服务(Systemd)

创建服务文件/lib/systemd/system/nginx.service

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MNPID
TimeoutStopSec=5
KillMode=mixed

[Install]
WantedBy=multi-user.target

启用服务:

sudo systemctl daemon-reload
sudo systemctl enable nginx
sudo systemctl start nginx

常用操作命令

# 启动
nginx 或 systemctl start nginx

# 停止
nginx -s stop 或 systemctl stop nginx

# 重载配置
nginx -s reload 或 systemctl reload nginx

# 重新打开日志文件
nginx -s reopen

编译额外模块

如需添加第三方模块(如echo模块):

./configure \
--add-module=/path/to/ngx_http_echo_module \
[其他原有参数...]

卸载方法

如需卸载编译安装的Nginx:

  1. 停止服务
  2. 删除安装目录
  3. 删除创建的符号链接和配置文件
sudo rm -rf /usr/local/nginx
sudo rm /usr/sbin/nginx
sudo rm /etc/nginx

常见问题解决

  1. 端口冲突:修改/etc/nginx/nginx.conf中的监听端口
  2. 权限问题:确保Nginx用户对相关目录有读写权限
  3. 依赖缺失:根据错误提示安装缺少的依赖库

通过以上步骤,您已成功从源代码编译安装了Nginx。这种安装方式虽然比直接使用包管理器复杂,但可以灵活定制功能模块,适合有特定需求的用户。 “`

推荐阅读:
  1. nginx的编译安装
  2. 编译安装nginx

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nginx

上一篇:Nginx+Keepalived怎么实现双机热备

下一篇:Keepalived+Nginx怎么实现高可用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》