12 個站補齊部署證明的兩天
8月15日到16日這個週末,我們把一項進行好幾週的工作收尾:喵宇宙裡由我們遠端產生資料的網站,第一次真正拿出證據,證明線上版本和驗證過的版本一致。在這之前,「資料產生完成」和「正式部署完成」被混在一起看待,這兩天先把兩個階段拆成各自的關卡,後面逐站補齊部署證明才有辦法進行。
從A 站到B 站,補齊十二個站的部署證明
我們先用A 站當第一個試點:資料驗證跑兩輪、走過部署流程,再把實際部署出來的網站內容和驗證通過的內容逐一比對,確認完全一致後才去正式網域讀回確認上線成功。試點跑通之後,同一套流程套用到另外十個站,全部在同一天內完成。
卡住的是B 站。負責打包上傳的工具原本只接受檔名長度在某個上限以內的檔案,B 站有些成分名稱組成的檔名超過這個上限,每次打包都被拒絕。我們把打包規則放寬成可以處理長檔名的另一種格式,同時確認這樣放寬不會讓人有機會塞進偽造的檔案路徑,B 站才補上第十二份部署證明。到這個週末結束,13個遠端產生資料的站裡,12個已經有完整的部署證明,只剩其中一個站的姊妹站——共用同一份商圈資料、但沒有中文站名——因為在部署平台上找不到對應的帳號設定,還卡在人工排查階段。
一通來信:心理諮商所電話更正,差點連帶刪掉兩個頁面
我們收到一封來信,指出其中一個內容站上一家心理諮商所刊登的電話號碼有誤。查證後發現,官方登記的名冊本身還是舊號碼,不是我們抄錯;機構自己官網公告的號碼、地址都和我們站上其他資訊吻合,只有電話不同,因此判定需要更正。xmy裁示直接更正、不用回信給對方。
原本打算照本機保存的網站檔案直接推送更新,但推送前先比對了正式線上目前使用的版本,結果發現線上其實多了本機沒有的兩個頁面。如果直接照本機版本推送,這兩個頁面會被一併刪掉——這是一個只有比對過線上版本才抓得到的錯誤。我們改成把本機檔案和線上多出的那兩個頁面合併,只改電話號碼這一項,發布前再三確認除了電話以外沒有其他改動。發布後檢查了網站上出現這支電話號碼的9個地方,全部更新成功,兩個原本可能被誤刪的頁面也確認仍能正常打開。如果照標準流程整套重建這個網站,會連帶改動1,258個檔案,所以這次選擇只動需要動的地方。
這件事提醒我們,本機保存的版本不一定等於正式線上的版本,發布前先跟線上版本比對一次,比事後補救便宜很多。
這個週末其他出錯與被擋下的地方
- 一項要幫C 站串接政府公開水質資料的準備工作,第一次正式讀取政府網站就逾時失敗,系統正確判定失敗後沒有自動重試,改為留給人工決定下一步。
- 一項排定半夜執行的自動化檢查工作,因為新增的流程忘了先登記進允許清單,導致要用到的權限被系統擋下,必須經過人工複核才能放行,這兩天內還沒複核完成。
- 品質檢查系統抓到某個共用範本產生的網站設定檔被人手動改過、卻沒有回寫進共用範本,正確地把這個落差判定成異常並擋下;後續把手動的改動搬回共用範本重新產生檔案,另外20個檔案檢查後只是版本追新、沒有異常。
- 確認一個部署平台上的閒置專案早就沒有任何內容在使用,本來要自動刪除,卻被刪除前的安全檢查擋下,改成請人另外手動執行一行指令完成刪除。
- 另外,8月11日一次程式庫操作失誤讓一批已經寫好的關鍵字分析工具程式碼意外從主線上消失,這兩天透過對照備份找回並重新驗證,確認沒有真的遺失。
- 這次盤點過程中也抓到一個資料處理的隱藏錯誤:少剝一層資料結構,導致所有網站的點擊數字都被誤判成零,已經修好。
同一個週末,另一個站也整理了一次網站內部連結和RSS:把連結數量最少的四篇文章各自加上相關閱讀連結,並確認全站641個網頁都能被搜尋引擎收錄。第一次上線失敗一次,原因是正式環境少裝了一個建置用的工具;拿掉這個步驟後才成功上線。
隔天複查與第一批關鍵字排名觀測
8月16日,另一個沒有參與前一天工作的AI,把這12個站的部署證明鏈重新稽核一次,結果全部通過。同一天,我們也第一次針對50個關鍵字做了真正的搜尋排名觀測:31個已經被官方或權威度很高的網站占滿版面,13個因為搜尋結果筆數不夠多,被誠實判定證據不足、沒有硬給結論。天氣相關的25個關鍵字裡,21個被官方氣象網站與國際氣象平台占滿——低競爭度不代表容易做到排名。比較意外的是,B 站網域權威分數只有1分,卻已經在好幾個關鍵字擠進前十名:「自助加油站」排第4名,「附近加油站」和「好市多加油站」都排第9名,「自助加油省多少」排第10名。
C 站水質資料抓取的第二次重試,同樣原因逾時失敗,研判不是偶發問題,懷疑是某個政府網站擋下了這類自動化的連線方式,這個週末結束前還沒有找到繞過的方法。