跳到主要內容

打造方式

我們的預設流程

每個專案都從同一套可以直接上線的基礎開始。這不是加購項目——除非你另有需求,否則我們就是這樣交付。

基礎

每個專案一開始就有的

應用程式

Laravel 搭配現行版本的 PHP 和 MySQL。除非產品需要 JavaScript 前端,否則頁面由伺服器端輸出。

用你的基礎設施

雲端、VPS 或代管主機都可以——部署到你的帳號,所有權完全在你手上。

自動化交付

第一週就建好 GitHub Actions 或 GitLab CI 的 CI/CD 流程,不是最後才補。

隨時可以交接

文件和維運手冊邊做邊寫,你的團隊不需要我們也能自己維運。

架構

從一次推送到正式環境

這是我們交付專案的典型架構。每個客戶用的服務商不同,但流程一樣。

程式碼推送到客戶的 Git 程式庫,CI/CD 流程檢查、建置並把應用程式部署到主機。使用者透過 CDN 以 HTTPS 連線。監控負責可用率、紀錄與備份。 你的程式庫 git push CI/CD 流程 檢查 · 建置 · 部署 主機 應用程式 CDN HTTPS · 快取 使用者 瀏覽器 監控 可用率 · 紀錄 · 備份 部署

交付流程

每次推送,都走同樣六個步驟

任何一步失敗,發佈就會停下來。新版本通過驗證之前,線上網站都繼續跑上一版。

  1. 程式碼風格

    格式與語法規則自動檢查,程式碼審查可以專心看邏輯。

  2. 靜態分析

    PHPStan;有 JavaScript 前端時再加上 TypeScript 檢查。

  3. 測試

    核心商業邏輯的自動化測試,在全新的資料庫上執行。

  4. 建置

    套件安裝和前端資源編譯在 CI 裡做一次——不在主機上做。

  5. 部署

    新版本放進新目錄,執行資料庫遷移,再切換符號連結把流量導過去。

  6. 驗證

    健康檢查確認新版本有回應;沒有的話,上一版繼續上線。

環境

程式碼會在三個地方

本機

跟正式環境一致的 Docker 環境,「我這邊可以跑」就代表真的可以跑。

測試環境

正式環境的副本,讓你在上線前檢查並確認修改。

正式環境

只透過部署流程上線。機密資訊放在環境設定或金鑰管理服務,絕不寫進程式碼。

資安與維運

第一天就安全、有監控

HTTPS 與安全標頭

HTTPS 搭配 HSTS,以及包含內容安全政策的安全標頭。

套件管理

CI 用到的套件鎖定在固定版本,自動提出更新,審查過才合併。

最小權限

部署用獨立的憑證,只給需要的權限,不共用密碼。

監控與告警

可用率檢查和錯誤告警,問題在使用者發現之前我們就知道。

實測過的備份

每日備份——而且還原真的試過,不是只留著檔案祈禱能用。

系統紀錄

應用程式和主機的紀錄保存到足以調查事件,之後定期輪替。

品質標準

說「完成」之前會檢查的

無障礙

WCAG 2.2 AA:對比、鍵盤操作、焦點樣式和螢幕閱讀器標籤。

效能

CI 裡設定 Lighthouse 預算,頁面不會一版一版悄悄變慢。

交接

安裝說明、架構文件,以及部署、回滾、還原備份和常見事件的維運手冊。

下一步

有專案要做,或團隊需要多一位工程師?

告訴我們你在做什麼,我們會在一個工作天內回覆。