debian

怎样在Nginx中配置静态资源缓存

小樊
38
2025-10-11 12:16:59
栏目: 编程语言

在Nginx中配置静态资源缓存可以显著提高网站的性能,减少服务器的负载。以下是一个基本的配置示例,展示了如何在Nginx中设置静态资源的缓存:

  1. 打开Nginx配置文件: 通常,Nginx的主配置文件位于 /etc/nginx/nginx.conf/etc/nginx/sites-available/default。你可以使用你喜欢的文本编辑器打开它,例如 nanovim

    sudo nano /etc/nginx/sites-available/default
    
  2. 配置静态资源缓存: 在 server 块中添加或修改以下配置:

    server {
        listen 80;
        server_name example.com;  # 替换为你的域名或IP地址
    
        root /var/www/html;  # 替换为你的静态资源目录
    
        location / {
            try_files $uri $uri/ =404;
        }
    
        # 配置静态资源缓存
        location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
            expires 30d;  # 设置缓存时间为30天
            add_header Cache-Control "public";
        }
    }
    

    解释:

    • location ~* \.(jpg|jpeg|png|gif|ico|css|js)$:匹配所有以 .jpg, .jpeg, .png, .gif, .ico, .css, .js 结尾的文件。
    • expires 30d;:设置这些文件的缓存时间为30天。
    • add_header Cache-Control "public";:添加 Cache-Control 头,允许浏览器缓存这些文件。
  3. 测试配置: 在保存并关闭配置文件后,运行以下命令来测试Nginx配置是否正确:

    sudo nginx -t
    

    如果配置没有问题,你会看到类似以下的输出:

    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
  4. 重新加载Nginx: 如果配置测试通过,重新加载Nginx以应用新的配置:

    sudo systemctl reload nginx
    

    或者,如果你使用的是较旧的系统初始化系统,可以使用:

    sudo service nginx reload
    

现在,Nginx将会缓存指定的静态资源,从而提高网站的加载速度和性能。

进一步优化

通过这些配置,你可以有效地利用Nginx的缓存功能来优化静态资源的加载速度。

0
看了该问题的人还看了