CentOS配置Nginx详细教程
一、前言

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,因其高并发处理能力、低资源消耗被广泛应用于各种互联网项目中,本文将详细介绍如何在centos系统上安装与配置Nginx,包括必要的依赖安装、Nginx的下载与编译安装、基础配置以及如何启动和管理Nginx服务。
二、准备工作
系统要求
CentOS 7及以上版本
具备sudo权限的用户
确保系统已更新所有软件包
检查并更新系统
- sudo yum update y
安装基本依赖工具
- sudo yum install y wget gcc gccc++ make zlib zlibdevel openssl openssldevel pcre pcredevel
三、下载并安装Nginx

下载Nginx源码
首先访问Nginx官方网站,选择稳定版本下载,以nginx1.24.0为例。
- wget http://nginx.org/download/nginx1.24.0.tar.gz
解压文件
- tar zxvf nginx1.24.0.tar.gz
- cd nginx1.24.0
配置、编译与安装Nginx
- ./configure prefix=/usr/local/nginx
- make
- sudo make install
创建软链接方便管理(可选)
- ln s /usr/local/nginx/sbin/nginx /usr/bin/nginx
四、配置Nginx
主要配置文件路径
Nginx的主要配置文件默认位于/usr/local/nginx/conf/nginx.conf
,编辑此文件以进行基本配置。
配置示例
- worker_processes 1;
- events {
- worker_connections 1024;
- }
- http {
- include mime.types;
- default_type application/octetstream;
- sendfile on;
- keepalive_timeout 65;
- server {
- listen 80;
- server_name localhost;
- location / {
- root /usr/share/nginx/html;
- index index.html index.htm;
- }
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root /usr/share/nginx/html;
- }
- }
- }
配置网站根目录权限
确保网站根目录的拥有者和权限正确:
- sudo chown R nginx:nginx /usr/share/nginx
- sudo chmod R 755 /usr/share/nginx
五、启动与管理Nginx
启动Nginx
- /usr/local/nginx/sbin/nginx
或者通过软链接启动:

- nginx
测试Nginx配置是否正确
- nginx t
如果输出syntax is ok
和test is successful
,说明配置正确。
重新加载Nginx配置
修改配置文件后,无需重启Nginx,只需重新加载配置:
- nginx s reload
设置开机自启动
- sudo vi /etc/systemd/system/nginx.service
在文件中增加以下内容:
- [Unit]
- Description=The NGINX HTTP and reverse proxy server
- After=syslog.target network.target remotefs.target nsslookup.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=/bin/kill s QUIT $MAINPID
- PrivateTmp=true
- [Install]
- WantedBy=multiuser.target
然后启用并启动Nginx服务:
- sudo systemctl enable nginx
- sudo systemctl start nginx
六、常见问题排查与FAQs
Q1: Nginx无法启动或报错怎么办?
A1: 可以查看错误日志获取更多信息,默认情况下,错误日志位于/usr/local/nginx/logs/error.log
,根据日志提示进行相应调整。
Q2: 如何修改Nginx监听的端口数?
A2: 在nginx.conf
中的http
区块内找到listen
指令,将其设置为所需的端口号,
- server {
- listen 8080;
- ...
- }
然后重新加载NGINX配置:
- nginx s reload