福建二哥
个人技术博客分享

linux如何编译安装nginx

分类: 网站运维 时间:2025-09-16 07:40:04 浏览:15次 评论:0
摘要:在Linux上编译安装Nginx的完整指南:从安装依赖库、下载源码、配置编译选项到系统服务配置和防火墙设置,帮助用户快速部署高性能的Nginx服务器,支持SSL、HTTP/2和状态监控功能。
关键字: Linux Nginx Compilation

在 Linux 上编译安装 Nginx

一、准备工作

在开始编译安装 Nginx 之前,需要确保系统中已经安装了必要的编译工具和依赖库。可以通过以下命令安装这些依赖项(以 Ubuntu/Debian 为例):

sudo apt update
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

对于 CentOS/RHEL 系统,可以使用以下命令:

sudo yum groupinstall "Development Tools"
sudo yum install pcre pcre-devel zlib zlib-devel openssl openssl-devel

二、下载 Nginx 源码

访问 Nginx 官方网站 获取最新的稳定版本源码包链接,然后使用 wget 下载:

wget http://nginx.org/download/nginx-1.24.0.tar.gz

解压下载的源码包:

tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0

三、配置编译选项

进入解压后的目录,运行 configure 脚本以配置编译选项。可以根据需要添加模块或自定义路径:

./configure --prefix=/usr/local/nginx \
            --with-http_ssl_module \
            --with-http_v2_module \
            --with-http_stub_status_module

常用选项说明:

  • --prefix:指定安装目录。
  • --with-http_ssl_module:启用 SSL 支持。
  • --with-http_v2_module:启用 HTTP/2 支持。
  • --with-http_stub_status_module:启用状态监控模块。

四、编译与安装

配置完成后,使用 make 命令编译源码:

make

编译成功后,使用 make install 进行安装:

sudo make install

五、启动 Nginx

安装完成后,进入安装目录启动 Nginx:

cd /usr/local/nginx/sbin
sudo ./nginx

验证 Nginx 是否成功启动:

curl http://localhost

如果返回 Nginx 的欢迎页面,说明安装成功。

六、配置系统服务(可选)

为了方便管理,可以创建 systemd 服务文件。使用以下命令创建服务配置文件:

sudo vim /etc/systemd/system/nginx.service

在文件中添加以下内容:

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

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
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

保存后重新加载 systemd 并启用服务:

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

七、防火墙配置

如果系统启用了防火墙,需要放行 HTTP(80)和 HTTPS(443)端口:

# Ubuntu/Debian(使用 ufw)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# CentOS/RHEL(使用 firewalld)
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

至此,Nginx 已经成功编译安装并运行。可以通过浏览器访问服务器 IP 地址查看默认页面。

评论留言请发表您的神机妙论……

昵称

邮箱

地址

私密评论
评论列表(共有0条评论)