跳到主要内容

CentOS Nginx 安装

介绍

Nginx 是一个高性能的 HTTP 和反向代理服务器,广泛用于托管网站、负载均衡和缓存。它以其高并发处理能力和低资源消耗而闻名。在本教程中,我们将逐步指导您如何在 CentOS 系统上安装和配置 Nginx。

安装 Nginx

1. 更新系统

在安装 Nginx 之前,建议先更新系统以确保所有软件包都是最新的。

bash
sudo yum update -y

2. 安装 Nginx

CentOS 默认的软件仓库中可能不包含最新版本的 Nginx。因此,我们需要添加 Nginx 的官方仓库。

bash
sudo yum install epel-release -y
sudo yum install nginx -y

3. 启动并启用 Nginx

安装完成后,启动 Nginx 服务并设置为开机自启。

bash
sudo systemctl start nginx
sudo systemctl enable nginx

4. 验证安装

要验证 Nginx 是否成功安装并运行,可以访问服务器的 IP 地址。如果看到 Nginx 的欢迎页面,说明安装成功。

bash
curl http://localhost

输出示例:

html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
...
</head>
<body>
<h1>Welcome to nginx!</h1>
...
</body>
</html>

配置 Nginx

1. 配置文件结构

Nginx 的主要配置文件位于 /etc/nginx/nginx.conf,而站点配置文件通常位于 /etc/nginx/conf.d/ 目录下。

2. 创建一个简单的站点配置

假设我们要为 example.com 创建一个站点配置文件。

bash
sudo nano /etc/nginx/conf.d/example.com.conf

在文件中添加以下内容:

nginx
server {
listen 80;
server_name example.com;

location / {
root /usr/share/nginx/html;
index index.html;
}
}

3. 测试配置并重启 Nginx

在应用配置之前,建议先测试配置文件是否正确。

bash
sudo nginx -t

如果输出 syntax is oktest is successful,则可以安全地重启 Nginx。

bash
sudo systemctl restart nginx

实际应用场景

1. 托管静态网站

Nginx 非常适合托管静态网站。您只需将 HTML、CSS 和 JavaScript 文件放置在 /usr/share/nginx/html 目录下,Nginx 会自动提供这些文件。

2. 反向代理

Nginx 可以作为反向代理服务器,将请求转发到后端应用服务器。例如,您可以将 Nginx 配置为将请求转发到运行在 localhost:8080 的 Node.js 应用。

nginx
server {
listen 80;
server_name example.com;

location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

总结

通过本教程,您已经学会了如何在 CentOS 系统上安装和配置 Nginx。我们还探讨了 Nginx 的一些实际应用场景,如托管静态网站和作为反向代理服务器。

提示

如果您想进一步学习 Nginx 的高级配置,可以参考 Nginx 官方文档.

附加资源

练习

  1. 尝试在您的 CentOS 系统上安装 Nginx,并托管一个简单的静态网站。
  2. 配置 Nginx 作为反向代理,将请求转发到本地运行的另一个服务(如 Node.js 或 Python 应用)。