Windows 7 + IIS 7 環境下,網站結構混亂、樣式完全失效,但 HTML 內容正常顯示,無報錯信息。經排查非代碼問題,而是 IIS 核心功能組件缺失。
IIS 7 採用模組化架構,靜態文件(CSS、JS、圖片等)處理由「靜態內容」模組負責。安裝 IIS 時若未勾選此功能,靜態資源將返回 404 或空響應,導致前端樣式失效。
iisreset /restart 或管理器中重啟站點
https://localhost/style.css 應正常返回內容StaticFileModule 已載入IIS 6 需手動添加 MIME 映射(如 .css → text/css),IIS 7 核心模組內建常見類型,但前提是「靜態內容」模組已安裝。
| 功能 | 對應模組名稱 | 缺失現象 |
|---|---|---|
| 靜態文件服務 | 靜態內容 | CSS/JS/圖片 404 |
| 目錄瀏覽 | 目錄瀏覽 | 無索引文件時 403/404 |
| 默認文檔 | 默認文檔 | 訪問目錄不自動加載 index.html |
| HTTP 錯誤頁面 | HTTP 錯誤 | 自定義錯誤頁不生效 |
| 壓縮傳輸 | 靜態壓縮 / 動態壓縮 | 無 gzip/deflate,傳輸體積大 |
Install-WindowsFeature Web-Static-Content 腳本化安裝IIS 7 模組化設計雖靈活,但易導致核心功能缺裝。「靜態內容」模組缺失是新手部署最常見坑點,記住「CSS 不生效先查模組」可快速定位解決。