定義現代網路:深入探討 The Website Specification
在一個網路被無數框架——從 Next.js 和 Astro 到舊有的 WordPress 安裝——所碎片化的時代,對於「好」網站的定義變得日益複雜。這不再僅僅關乎有效的 HTML;它還關乎無障礙性、安全性標頭、搜尋可見度,以及現在,讓 AI agent 能高效解析內容的能力。
最近,一個名為 The Website Specification 的專案作為一種將這些需求規範化的雄心嘗試而出現。它並非發明新規則,而是作為一個從 WHATWG、W3C、IETF 和 WCAG 整理而來的現有標準聚合器。其目標是提供一個與平台無關的檢查清單,確保無論使用何種技術棧來建構,網站都能在技術上保持健全。
現代網站的十大支柱
該規範將現代網站的技術需求組織成十個不同的類別,為開發者審核其目前的專案提供了一份路線圖:
- Foundations: 基礎 HTML、head 標籤和文件基本要素。
- SEO: 透過
robots.txt、sitemaps 和結構化數據來管理搜尋可見度。 - Accessibility: 確保符合 WCAG,使網路對所有能力的人都能使用。
- Security: 實作關鍵的標頭、傳輸協定和安全政策。
- Well-Known URIs: 利用
/.well-known/下的標準路徑(例如security.txt)進行自動化探索。 - Agent Readiness: 為 AI agent 和爬蟲進行優化,使網站對下一代網路消費者而言是易讀的。
- Performance: 專注於 Core Web Vitals、快取策略和網路行為。
- Privacy: 透過同意訊號和隱私政策來尊重訪問者的選擇。
- Resilience: 透過自定義錯誤頁面和離線功能來規劃優雅的失敗處理。
- Internationalisation: 處理語系、語言方向和翻譯內容。
橋接人類與 Agent 的鴻溝
該規範中最具前瞻性——也最具爭議性——的面向之一是其對「Agent Readiness」的關注。該專案不僅列出需求;它還實作了它們。整個規範可以作為一個開放的 Model Context Protocol (MCP) server 使用,允許 AI agent 直接查詢該規範。它還提供了 llms.txt 並支援 Accept: text/markdown 標頭,以確保 LLM 可以消耗這些文件而不會受到傳統 UI 的雜訊干擾。
這種方法承認了網路消費方式的一個根本性轉變。我們正從一個人類瀏覽頁面的世界,轉向一個由 agent 作為中介者的世界。透過提供一種結構化的方式讓 agent 理解網站的能力,該規範試圖為網路進行未來化設計。
社群批判:標準 vs. 「Slop"
與任何試圖將網路標準化的嘗試一樣,開發者社群的反應是兩極分化的。雖然許多人稱讚它是一個適合初學者的優秀資源和有用的審核工具,但其他人則持懷疑態度。
「Slop」之爭
某些批評者認為該專案是「AI slop」的一個例子,暗示使用 LLM 生成內容會導致檢查清單顯得臃腫或流於形式。人們擔心,在開發者的任務中增加一個 128 項的檢查清單,可能會讓大家不再想單純地發布一個網站。
Agent 特定規範的效用
關於 llms.txt 的價值以及特定的 agent 許可,存在著顯著的爭議。一些開發者認為網路的魅力在於其通用性——即 agent 應該能夠在不需要特殊提示的情況下解析標準 HTML。
"Agent Readiness 可能會像 'Web 4.0 Blockchain Integration' 一樣隨著時間而褪色... 要求網站提供特殊的許可,這削弱了網路的初衷。"
實務上的落差
技術用戶也指出了該規範可以擴展的領域。例如,對於登入表單的需求非常強烈——特別是針對密碼管理器的標準輸入欄位名稱的使用、停用電子郵件欄位的自動大寫功能,以及遵循 NIST SP 800-53 指南以擺脫基於 SMS 的 2FA。
結論:一種務實的品質方法
儘管存在批評,The Website Specification 的價值在於其作為一個集中式目錄的角色。透過將每一項建議都連結回事實來源(例如 IETF RFC 或 MDN),它避免了成為僅僅是意見的集合。
對於現代開發者而言,該規範提醒了我們,「完成」的網站不僅僅是一個運作中的 UI。它是安全性、無障礙性與可發現性的複雜交集。無論你將這 128 項檢查清單視為全面的黃金標準,還是過度設計的負擔,該專案都凸顯了現代網路開發中經常在陰影下累積的必要技術債。