linux

nginx如何缓存静态资源

小樊
48
2025-10-14 13:29:01
栏目: 编程语言

Nginx可以通过配置文件来缓存静态资源。以下是一些基本的步骤和示例配置,帮助你设置Nginx以缓存静态资源:

  1. 确定静态资源的目录: 通常,静态资源(如CSS、JavaScript、图片等)会放在网站的某个特定目录下,例如 /var/www/html/static

  2. 配置Nginx服务器块: 在Nginx的配置文件中(通常是 /etc/nginx/nginx.conf/etc/nginx/sites-available/yourdomain.com),你需要添加或修改一个服务器块(server block)来处理静态资源的请求。

  3. 设置缓存路径和参数: 使用 location 块来指定静态资源的路径,并使用 alias 指令将其映射到实际的文件系统路径。然后,使用 expiresadd_header 指令来设置缓存过期时间和添加缓存控制头。

以下是一个示例配置:

server {
    listen 80;
    server_name yourdomain.com;

    # 静态资源目录
    location /static/ {
        alias /var/www/html/static/;
        expires 30d;  # 设置缓存过期时间为30天
        add_header Cache-Control "public";  # 设置缓存控制头
    }

    # 其他配置...
}

详细解释

其他有用的指令

示例配置(包含更多缓存设置)

server {
    listen 80;
    server_name yourdomain.com;

    location /static/ {
        alias /var/www/html/static/;
        expires 30d;
        add_header Cache-Control "public, max-age=31536000";
        open_file_cache max=1000 inactive=20s;
        open_file_cache_valid 30s;
        open_file_cache_min_uses 2;
    }

    # 其他配置...
}

测试和重启Nginx

在修改配置文件后,记得测试配置是否正确:

sudo nginx -t

如果配置正确,重启Nginx以应用更改:

sudo systemctl restart nginx

通过以上步骤,你可以有效地使用Nginx缓存静态资源,提高网站的加载速度和性能。

0
看了该问题的人还看了