NGINX动静分离配置
时间: 2024-12-08 07:12:20 浏览: 22
NGINX的动静分离配置是指将动态请求和静态请求分开处理,以提高网站的性能和安全性。通过动静分离,可以将静态资源(如图片、CSS、JavaScript文件等)直接从NGINX服务器上提供,而将动态请求(如PHP、Python等)转发到后端应用服务器进行处理。
以下是NGINX动静分离配置的一个示例:
```nginx
server {
listen 80;
server_name example.com;
# 静态文件处理
location /static/ {
alias /var/www/html/static/;
expires 30d;
access_log off;
}
# 动态请求处理
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;
}
}
```
在这个配置中:
1. `listen 80;` 指定了NGINX监听的端口。
2. `server_name example.com;` 指定了服务器的域名。
3. `location /static/ { ... }` 块配置了静态文件的处理方式:
- `alias /var/www/html/static/;` 指定了静态文件的实际存储路径。
- `expires 30d;` 设置了静态文件的缓存过期时间为30天。
- `access_log off;` 关闭了访问日志记录,减少日志文件的大小。
4. `location / { ... }` 块配置了动态请求的处理方式:
- `proxy_pass http://backend_server;` 将请求转发到后端应用服务器。
- `proxy_set_header` 指令设置了转发请求的头部信息。
通过这种配置,NGINX可以将静态请求和动态请求分开处理,从而提高网站的响应速度和性能。
阅读全文