因此,我運行一項服務,用戶可以在其中建立網站並獲得自己的子網域。因此,如果用戶有網站,a-site-name
他們的子網域將是a-site-name.domain.com
.有些使用者希望能夠擁有自己的網域,而不是我的網域上的子網域。我知道我應該能夠使用 DNS 中的 CNAME 記錄來執行此操作(因此sub.the-users-domain.com
解析為a-site-name.domain.com
)。然而,當我嘗試執行此操作時,我從 Cloudfront 收到 403。
描述我的設定:
- 檔案由 AWS Cloudfront 使用 S3 儲存桶作為來源點提供。
- 每個網站
a-site-name
都儲存在 S3 儲存桶中同名的資料夾中。 - 我正在運行一個 Lambda@Edge 函數,以便每當向(通配符子域)發出請求時,
a-site-name.domain.com/whatever-resource
它實際上會解析為distribution-id.cloudfront.net/a-site-name/whatever-resource
.
我猜我收到 403 的事實與我的 Cloudfront 部署的配置或 Lambda@Edge 函數有關。有誰知道如何更改配置以便人們可以僅使用 CNAME 記錄來使用自己的網域?說實話,我迷失了。