靜態網站範例和提示

本頁提供使用值區托管靜態網站的範例和提示。

網站設定範例

以下情境示範當您嘗試使用不同網址存取時,系統會提供給您的物件。

三個物件的值區

假設值區名稱為 www.example.com,已設定為使用以下設定值和檔案的網站:

  • MainPageSuffix = "index.html"
  • NotFoundPage = "404.html"
  • 這個值區含有三個公開共用的物件:「index.html」、「404.html」和「dir/index.html」。

下表顯示針對所選網址提供的內容:

要求的網址 提供的內容 HTTP 回應碼
http://www.example.com
http://www.example.com/
http://www.example.com/index.html
「index.html」物件。 200
http://www.example.com/hello 「404.html」物件。 404
http://www.example.com/dir/index.html 「dir/index.html」物件。 200
http://www.example.com/dir 「dir/index.html」物件。 301
http://www.example.com/dir/ 「dir/index.html」物件,並假設 /dir/ 中沒有存在任何零位元組物件 200
零位元組的空白物件 (如果存在於 /dir/)。要瞭解如何移除這個零位元組物件,請參閱疑難排解主題 301

兩個物件的值區

假設值區名稱為 www.example.com,已設定為使用以下設定值和檔案的網站:

  • MainPageSuffix = "main.html"
  • NotFoundPage = "404.html"
  • 這個值區含有兩個公開共用的物件:「main.html」和「404.html」。

下表顯示針對所選網址提供的內容:

要求的網址 提供的內容 HTTP 回應碼
http://www.example.com
http://www.example.com/
「main.html」物件。 200
http://www.example.com/index.html 「404.html」物件。 404

如果物件已公開共用,您也可以透過該網址查看這個物件。

http://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]

例如,index.html 物件的網址會是:

http://storage.googleapis.com/www.example.com/index.html

要進一步瞭解如何使用可公開存取的資料,請參閱存取公開資料一文。

已設定為網站的值區使用提示

使用值區託管靜態網站時,請注意下列事項。

新增子網域

假設除了從值區在 www.example.com 提供內容之外,您也想從不同的值區在 test.example.com 提供內容。方法如下:

  1. 建立新值區 test.example.com。由於您已驗證了網域 example.com,所以不用再次驗證,即可建立值區來支援子網域。

  2. 為子網域新增 CNAME 記錄

    NAME                  TYPE     DATA
    test                  CNAME    c.storage.googleapis.com.
    

設定快取參數

您可以設定 Cache-Control 中繼資料,來控制網站資產的快取方式以及是否啟用快取。一般來說,只需為匿名使用者皆可存取的物件設定快取控制中繼資料,即可以從 Cloud Storage 值區提供任何物件做為靜態網站的一部分。

Cloud Storage 會將 3600 秒的快取設定套用至所有匿名使用者可存取的物件,除非您指定明確的快取控制設定。如需設定物件中繼資料 (如 Cache-Control) 的操作說明,請參閱查看及編輯中繼資料說明。

API 行為

MainPageSuffixNotFoundPage 網站設定僅適用於透過 CNAME 端點或透過 Cloud Load Balancing 導向 Cloud Storage 的要求。例如,向 www.example.com 發出的要求會顯示索引頁面,但向 storage.googleapis.com/www.example.com 發出的對等要求不會顯示索引頁面。

因此,向 Cloud Storage 網域 (如 storage.googleapis.com/www.example.com) 發出的要求,會保留 API 行為。舉例來說,您可以繼續列出 www.example.com 值區中的物件,就像其他值區一樣。以 www.example.com 值區為例,您所收到的物件清單會包括 404.htmlindex.html

為動態網站託管靜態資產

您可以使用 Cloud Storage 為託管於例如 Google App EngineGoogle Compute Engine 中的動態網站託管靜態資產。託管值區中的靜態資產 (如圖片或 JavaScript 檔案等) 的一些好處如下:

  • Cloud Storage 的運作方式本質上類似內容傳遞聯播網 (CDN),您不用做任何工作,因為在 Cloud Storage 網路中,預設會快取可公開讀取的物件。

  • 一般來說,透過 Cloud Storage 存取內容的頻寬費用較低。

  • 從 Cloud Storage 提供靜態內容時,可減輕網路伺服器的負載。

對於可公開讀取的靜態資產,您也可以使用 cache control 要求標頭控制快取,例如停用快取功能或設定快取生命週期。詳情請參閱設定快取參數一節。

為動態網站託管靜態資產時,您不需要建立 CNAME 記錄並指向具有相同名稱的值區,這與靜態網站的情況不同。例如,您可以建立一個命名為 www_example_com_assets 的值區,並將其中的適當資產設定為公開共用,然後使用 Cloud Storage 網域存取這些資產。譬如,假設在值區 www_example_com_assets 中有一個設為公開共用的 JavaScript 檔案 library.js,則可透過 http://storage.googleapis.com/www_example_com_assets/library.js 來存取這個檔案。

監控儲存費用

如果您從已設定為靜態網站的值區提供資產,或從值區為 Cloud Storage 之外託管的動態網站提供靜態資產,則應監控含此值區的專案所產生的費用。提供內容會產生儲存內容、使用網路及執行擷取作業的 Cloud Storage 費用。詳情請參閱 Cloud Storage 定價頁面

定價頁面上的簡易計費範例可用於粗估低流量靜態網站應用實例的費用。您可以使用 Pricing Calculator,根據預測使用量來產生預估費用。

初次使用 Cloud Platform 的使用者可能符合申請免費試用的資格。

如果您目前是 Cloud Platform 使用者,可在「billing」(帳單) 頁面取得專案費用的明細。

疑難排解

如要瞭解有關使用設定為提供靜態網站內容的值區的常見問題,請參閱疑難排解頁面。

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Storage
需要協助嗎?請前往我們的支援網頁