動手之前
先把資料備齊,不必再多開分頁。
- 上線指南除了「讓網站上線」以外,其他都完成了。
- 草稿裡包含的顧客流程,在 Desktop(桌機版)和 Mobile(手機版)預覽都測過。
- 工作區已開通雲端發布,而且目前這個帳號有發布權限。
- 這個專案需要的交付方式,工作區的方案有涵蓋:帶自己的資料庫和後台的完整交付,要 Storefront Pro 方案;純店面交付則是任何能發布的方案都可以。
你會學到
- 把預覽、審查、匯出和正式部署分清楚。
- 把上線檢查當成內容品質的最後一道關。
- 以伺服器回報的雲端狀態為準,而不是按鈕按下去那一刻。
- 宣布上線之前,先驗證回傳的網站、發布版本標記,走完整交付時還要驗證後台。
把上線指南做完,並跑過兩種審查畫面
草稿準備好了,快速發布才有意義。先用編輯器自動算出來的清單,把可以預料的上線失誤清掉。
- 打開上線指南,把它針對這個專案列出的商家資料、營業時間、真實相片、內容、SEO、按鈕去處和手機預覽逐項完成。
- 打開預覽,在 Desktop 和 Mobile 測店面。草稿裡有營運模組時,後台也要測——完整交付會把後台一起發布出去,你在這裡驗過的,就是店裡的人之後每天在用的。
- 需要別人核准草稿或回饋意見時,就用審查。
- 等狀態顯示已存檔,再打開上線。
做到這樣就算完成: 草稿裡沒有已知的範例資料,主要動作也沒壞;而且存下來的這一版,就是通過伺服器資格檢查後要發布的那一版。
打開上線,先確認雲端發布是可用的
在瀏覽器版裡,發布是由伺服器控管的工作區能力。服務商的金鑰只該放在伺服器上,絕對不要貼到頁面內容或瀏覽器儲存空間裡。
- 在編輯器上方工具列按「上線」。
- 畫面顯示無法發布、沒有權限或尚未設定時,就停下來,請工作區擁有者去開通。
- 不要拿匯出當部署。匯出是可攜帶的檔案,不是伺服器確認過的線上網站。
- 確認選到的專案。要等不可變更的發布版本通過上架檢查,Naratake 才會給出正式的系統網址;瀏覽器不會自己編一個服務商子網域出來。
做到這樣就算完成: 上線畫面認出的是正確的網站,並接受一個已驗證身分的雲端發布請求,過程中不會跟使用者要基礎設施的金鑰。
選定交付方式,並確認方案涵蓋得了
Naratake 產生的是一套完整的 Next.js 應用程式,背後有資料庫;訂單、訂位、預約、顧客這些主要營運模組,都要靠那個資料庫跑起來。雲端發布對這套應用有兩種交付。完整交付會為網站開一套自己的 Postgres 資料庫和後台,那些模組會真的上線,顧客留下的紀錄也存得下來。純店面交付是同一個網站拿掉寫入面,拿掉了哪些會逐條列在發布報告裡。一個工作區能請求哪一種,是送出請求時由伺服器決定的,不是瀏覽器說了算:完整交付需要方案同時包含商務和預約模組,目前就是 Storefront Pro。至於網站本身會有哪些東西,一樣是依照存檔後那一版實際會交付的元件和模組算出來的,不是看範本名稱。
- 看清楚上線畫面說這次要交付什麼:是帶自己的資料庫和後台的網站,還是同一個網站的純店面版本。
- 生意需要即時訂單、預約、顧客紀錄或需登入的後台時,就請求完整交付。方案裡沒有商務和預約模組的工作區,會在動到任何服務商之前先被擋下來,而且被擋的訊息會講明哪個方案有這項。
- 不要為了早一點發布,就把生意需要的模組拿掉。要嘛把工作區換到包含完整交付的方案,要嘛就明明白白地決定先上純店面交付,在那之前把完整營運流程留在預覽裡測。
- 方案沒有包含的交付方式,不要改用桌面版匯出、自己的服務商金鑰,或手動從瀏覽器上傳來頂替。
做到這樣就算完成: 這次請求的交付方式是工作區方案涵蓋得了的;純店面交付會少掉的東西,也在送出之前就寫下來,而不是等顧客先撞到。
每一則上線檢查警告都要讀
警告不一定會擋住部署,但它們講的是顧客看得到的問題。把它們當成一份需要簽字放行的清單。
- 逐則打開警告,弄清楚受影響的是哪一頁、哪段內容、哪個模組或哪個環境設定。
- 顧客看得到的問題先修:少了法律條文、還留著範例資料、按鈕點了沒反應、付款設定沒填完。
- 如果某則警告是刻意接受的,送出上線前把是誰接受的、為什麼接受記下來。
做到這樣就算完成: 每一則警告不是修掉了,就是由有權限的負責人明確接受,而且知道對顧客的影響是什麼。
只送出一次,然後看伺服器回報的狀態
部署要花時間,也可能做到一半才失敗。真正算數的是雲端服務回報的狀態,不是你按下去那一刻,也不是瀏覽器樂觀顯示的訊息。
- 「上線」只按一次,進度回報期間讓專案一直開著。
- 覺得建置很慢也不要一直重送。重試之前先重新整理部署狀態或發布紀錄。
- 伺服器回報錯誤時,把請求或部署編號和完整訊息留下來,照它說的原因修好,再重試一次。
- 模擬、演練、預覽或還在進行中的狀態,一律當成還沒上線。
做到這樣就算完成: 部署走到伺服器確認的就緒或上線狀態,並回傳這一個版本專屬的網址。
對外公布之前,先驗證線上網址
最後這關要離開編輯器,直接對著回傳的公開網站和它真實的伺服器行為來檢查。
- 用無痕視窗打開回傳的網址,檢查首頁、導覽列、法律連結,以及這一版真的有帶上的每一個行動按鈕。
- 確認公開內容就是審過的那一版,而不是舊的預覽。
- 只有這一版真的帶了訂單、訂位、預約或需登入的後台,才對外這樣說。完整交付有帶——到回傳的網站登入後台,確認測試紀錄真的進得來;純店面交付沒有,發布報告裡會列出它拿掉了哪些。
- 分享出去之前,用手機打開線上網址看一次,並確認是 HTTPS。
做到這樣就算完成: 公開網址以 HTTPS 提供的就是審過的那一版,而且每一個目前支援的顧客動作都表現正常。
之後的修改,要當成新的一次驗證發布
存檔只是更新草稿,不會偷偷改到線上的網站。下一版審好了,再按一次上線。
- 改完之後等顯示已存檔,再重跑一次預覽,以及各模組專屬的測試。
- 動到線上模組的改動,部署前要當成會影響資料的決策來審。
- 再按一次上線,並且像第一次發布那樣,把回傳的狀態和網址驗證一遍。
- 新版還在驗證期間,讓上一個可用的發布版本保持可用。
做到這樣就算完成: 線上網站只有在經過新一輪審查、且伺服器確認的發布之後才會改變。
最後檢查
這幾項全部成立,才算真的做完。
- 存下來的草稿已通過上線指南,以及 Desktop 和 Mobile 預覽。
- 雲端發布已開通,發布的人也有權限,這次請求的交付方式也是方案涵蓋得了的。
- 每一則上線警告都修掉了,或被明確接受。
- 伺服器回報已上線,並給出預期的網址。
- 已發布的頁面、手機檢視、發布版本識別和 HTTPS 都驗證過了。