centos

nginx在centos上如何实现动静分离

小樊
43
2025-08-30 19:43:50
栏目: 智能运维

在CentOS上使用Nginx实现动静分离,主要涉及到配置Nginx以区分处理静态文件和动态请求。以下是详细的步骤:

1. 安装Nginx

首先,确保你的CentOS系统上已经安装了Nginx。如果没有安装,可以使用以下命令进行安装:

sudo yum install epel-release
sudo yum install nginx

2. 配置Nginx

编辑Nginx的配置文件,通常位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。以下是一个示例配置,展示了如何实现动静分离:

server {
    listen 80;
    server_name example.com;

    # 静态文件处理
    location /static/ {
        alias /var/www/static/;
        expires 30d;
        add_header Cache-Control "public";
    }

    # 动态内容处理
    location / {
        proxy_pass http://backend_server;
        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;
    }
}

3. 配置静态文件目录

确保你的静态文件存放在 /var/www/static/ 目录下。你可以根据需要更改这个路径。

4. 配置后端服务器

在上面的配置中,proxy_pass http://backend_server; 指向你的后端服务器。你需要将 backend_server 替换为实际的后端服务器地址和端口。例如,如果你的后端服务器运行在 192.168.1.100:8080,则配置如下:

location / {
    proxy_pass http://192.168.1.100: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;
}

5. 重启Nginx

保存配置文件后,重启Nginx以应用更改:

sudo systemctl restart nginx

6. 测试配置

打开浏览器,访问 http://example.com/static/http://example.com/,确保静态文件能够正确加载,并且动态请求能够正确转发到后端服务器。

通过以上步骤,你就可以在CentOS上使用Nginx实现动静分离了。

0
看了该问题的人还看了