Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

徹底解決 IIS 304 緩存導致網頁不更新:一鍵禁用緩存的 HTTP 頭配置法

編輯:關於伺服器

問題根因

IIS 預設啟用靜態文件緩存,瀏覽器二次請求返回 304 Not Modified,導致前端修改不生效,嚴重影響開發調試與內容更新。

解決方案:添加 HTTP 響應頭 Cache-Control: no-cache

圖形界面操作步驟(IIS 6.0)

  1. 打開 Internet 信息服務 (IIS 管理器)
  2. 選中目標網站(或「網站」節點全局生效) → 右鍵「屬性」
  3. 切換 HTTP 標頭 標籤 → 「自定義 HTTP 標頭」區域點「添加」
  4. 輸入:
    • 自定義 HTTP 標頭名:Cache-Control
    • 自定義 HTTP 標頭值:no-cache
  5. 確定保存,IIS 立即生效(無需重啟)

命令行批量配置(適用腳本化部署)

cscript adsutil.vbs set w3svc/1/HttpHeaders/Cache-Control "no-cache"
# 其中 1 為網站 ID,全局則設 w3svc/HttpHeaders/Cache-Control

進階緩存控制策略

場景Header 設置說明
開發調試Cache-Control: no-cache, no-store, must-revalidate強制每次向服務器驗證,不緩存任何內容
靜態資源長期緩存Cache-Control: public, max-age=31536000一年過期,配合文件名哈希實現版本控制
API 動態數據Cache-Control: private, no-cache僅瀏覽器緩存,中間代理不緩存,每次驗證

驗證方法

curl -I https://your-site.com/style.css
# 應包含
Cache-Control: no-cache

注意

  • 此設置影響所有靜態文件(CSS/JS/圖片/HTML),生產環境建議僅開發/測試環境啟用
  • 生產環境應配合 Expires/ETag/Last-Modified 實現精細緩存策略
Copyright © Windows教程網 All Rights Reserved