周三下午兩點,我在瀏覽器里敲下AWS控制臺的地址,決定不再拖延那個擱置半年的計劃——把簡歷和作品集部署成一個真正的線上網站,而不是扔在某個壓縮包里。云計算證書考過幾個,但親手搭一套能對外開放、走完整CDN和HTTPS的靜態頁面,我還真沒從頭來過。這次選的路子很明確:用S3存放文件,靠CloudFront做全球分發,全程不碰一臺EC2服務器,沒有系統補丁的煩惱,半夜也不會收到宕機警報。
圈子里有句半開玩笑的話:“最好的基礎設施,就是凌晨兩點不用你爬起來哄睡的那種。”對這個項目來說,云原生靜態部署恰好就在這條線上。表面上它簡單到讓人遲疑——傳幾個HTML文件,配置一條CDN規則,能有什么含金量?可真正鉆進去我才發現,每一步都在重新提醒自己:S3權限策略、存儲桶訪問控制、源站身份驗證,這些詞不只是考證題庫里的選項,而是云工程師飯碗上實實在在的刻度。
![]()
先別急著一頭扎進控制臺。在點擊任何一個操作按鈕之前,我想先把請求的完整路徑畫清楚,這樣后面每步配置的原因就會自動浮出水面。整個架構的流動很簡單:訪客通過HTTPS發來請求,CloudFront在全球邊緣節點攔截;如果節點上有緩存好的文件副本,它直接把內容返回,不驚動后面的存儲桶;只有緩存未命中時,CloudFront才回頭以私密身份向S3請求源文件,取回來緩存好,再交給訪客。換句話說,S3存儲桶不需要對著公網敞開大門,它只認CloudFront這一個“代購員”,安全態勢一下子就收窄了。
這個邏輯想透,就開始動手。第一步,創建S3存儲桶。我點進S3服務,選了“創建存儲桶”,填上一個全球唯一的名稱,比如“xiaobai-portfolio-2024”,順手把區域定在美東的弗吉尼亞北部。接下來一個很容易踩坑的地方:公共訪問權限設置。控制臺默認勾選“阻止全部公共訪問”,這是對的,保持打勾。很多人初學時會立刻全部取消阻止,讓存儲桶徹底公開,文件倒是能訪問了,可這種做法等于是把自家鑰匙壓在門口的地毯下面。更穩妥、也更規范的方案,是讓存儲桶始終保持私有,僅通過CloudFront的源站訪問控制策略來握手,這正是我們要走的路線。
第二步,上傳網站文件。花半小時理了理電腦里的作品集文件夾結構——一個index.html、一份style.css、一段script.js,外加頭像圖片和PDF版簡歷,全塞進assets子目錄。在S3控制臺打開剛建好的桶,點“上傳”,把整個文件夾拖進去,保持目錄結構不變,確認上傳。手里有AWS命令行工具的話,同步更新就更快了,一句“aws s3 sync ./my-portfolio s3://your-bucket-name”就能把本地改動飛速推到云端。但我這次老老實實用圖形界面,好讓每一步的得失都嚼透。
第三步,啟用靜態網站托管。進存儲桶的屬性頁,找到“靜態網站托管”那一欄,點“編輯”。把托管開關從禁用撥到啟用,填寫索引文檔為“index.html”,報錯文檔也可以順手設成“error.html”,不過現階段先略過。到這里,桶本身已經具備了作為網站源站的能力,只是它依然不直接接待外來的訪客。下一步本該輪到CloudFront上場接手所有對外入口、配置源站訪問控制并分發證書,但這一手規劃要拆得更細。當我把托管選項點下保存時,瀏覽器正在加載下一節操作指南,窗外的噪音剛好被耳機里的白噪音蓋過——就像這套架構本身,安靜,但每一層都在穩健地傳遞流量。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.