You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Siteground托管静态HTML站点根域名页面内容更新延迟问题咨询

问题核心原因
  • Siteground的动态缓存(Dynamic Cache)对根路径/的目录请求和具体文件/index.html的缓存规则互相独立,手动清空全局Dynamic Cache往往只会清理已识别的静态文件缓存,不会触发根路径的缓存条目失效
  • 站点默认DirectoryIndex规则映射的根路径响应,会被服务器层额外设置更长的缓存TTL(生存时间),远高于单独的html文件缓存时长
  • 仅清理浏览器缓存、刷新具体html文件,不会触发服务器层根路径缓存的失效
修复步骤
  • 1. 单独刷新根路径缓存

    进入Siteground的Site Tools后台,找到缓存->动态缓存->刷新单个URL,输入完整根域名(格式为https://www.domain.com/,末尾必须带斜杠)单独执行刷新,不要仅使用全局刷新功能,全局刷新经常会漏掉目录级的缓存条目
  • 2. 调整根路径缓存TTL

    进入速度->缓存->设置页面,给根路径/单独设置缓存TTL为1小时以内,也可以统一设置所有HTML文件的缓存TTL为短时长,避免长期缓存旧内容
  • 3. 通过规则固定缓存策略

    编辑站点根目录下的.htaccess文件,添加如下配置:
    <IfModule mod_headers.c>
        # 根路径请求缓存策略
        <FilesMatch "^$">
            Header set Cache-Control "no-cache, no-store, must-revalidate"
            Header set Pragma "no-cache"
            Header set Expires 0
        </FilesMatch>
        # 所有HTML文件统一缓存策略,可自行调整max-age数值(单位为秒)
        <FilesMatch "\.(html|htm)$">
            Header set Cache-Control "public, max-age=3600, must-revalidate"
        </FilesMatch>
    </IfModule>
    
    该规则会让根路径每次请求都校验资源是否更新,HTML文件默认缓存1小时,从根源避免出现长时间缓存旧内容的问题
  • 4. 临时应急方案

    如果需要内容立即生效,可以在缓存设置页面临时禁用动态缓存5-10分钟,等根路径旧缓存过期后再重新开启,即可强制加载最新内容
验证方法

修改完成后,可通过curl命令curl -I https://www.domain.com/查看响应头:

  • 检查Cache-Control字段是否和你设置的规则一致
  • 检查x-proxy-cache字段,如果值为MISS说明已经命中新内容,没有走旧缓存

内容的提问来源于stack exchange,提问作者unefemmegigi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 03:24:04