在 CentOS 7 上编译安装 Nginx 1.18

1. 安装依赖包

首先,安装 Nginx 所需的基本依赖包:

bash 复制代码
yum install -y gcc gcc-c++ make automake autoconf pcre-devel zlib-devel openssl-devel

2. 下载 Nginx 源代码

bash 复制代码
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -xzvf nginx-1.18.0.tar.gz
cd nginx-1.18.0

3. 配置 Nginx

基本配置示例:

bash 复制代码
./configure \
--prefix=/opt/nginx \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/run/nginx.lock \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-http_slice_module \
--with-mail \
--with-mail_ssl_module \
--with-file-aio \
--with-threads \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module \
--with-stream_geoip_module \
--with-stream_ssl_preread_module

4. 编译与安装

编译和安装Nginx:

bash 复制代码
make
make install

5. 创建系统服务和设置开机启动

创建 Systemd 单元文件(如 /etc/systemd/system/nginx.service)并设置开机启动:

ini 复制代码
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

保存文件后,加载新服务并启动Nginx:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable nginx
sudo systemctl start nginx

6. 验证安装

检查 Nginx 是否正确安装并运行:

bash 复制代码
sudo systemctl status nginx

若想确认Nginx是否能正常提供服务,可以通过浏览器访问服务器的IP地址或者配置的域名,看看是否能显示出Nginx的默认欢迎页面。

相关推荐
fuyongliang1239 小时前
nginx反向代理,负载均衡,tomcat的数据流向图篇解析
nginx·tomcat·负载均衡
tuokuac10 小时前
nginx配置前端请求转发到指定的后端ip
前端·tcp/ip·nginx
苹果醋314 小时前
数据库索引设计:在 MongoDB 中创建高效索引的策略
java·运维·spring boot·mysql·nginx
✎﹏赤子·墨筱晗♪15 小时前
从反向代理到负载均衡:Nginx + Tomcat 构建高可用Web服务架构
nginx·tomcat·负载均衡
叶绪25815 小时前
Nginx 反向代理 + Tomcat 集群:负载均衡配置步骤与核心原理
nginx·tomcat·负载均衡
杏花春雨江南19 小时前
腾讯云 CLB (Cloud Load Balancer) 为例,详细讲解如何配置 Nginx 集群
nginx·云计算·腾讯云
牛奶咖啡1320 小时前
Nginx+Tomcat集群Redis共享session方案
redis·nginx·tomcat·redisson·分布式session共享方案·分布式session实现·jdk1.8环境安装
荣光波比1 天前
Nginx 实战系列(四)—— Nginx反向代理与负载均衡实战指南
运维·nginx·云计算·负载均衡
岚天start1 天前
K8s Ingress Annotations参数使用指南
nginx·kubernetes·k8s·ingress·ingress控制器
Mr. Cao code1 天前
探索OpenResty:高性能Web开发利器
linux·运维·服务器·前端·nginx·ubuntu·openresty