Vapor 一直让您能够轻松地将应用程序部署到自定义域名、子域名,甚至通配符子域名。
然而,它只可能使用单级子域名 - 这意味着您可以将应用程序部署到 api.example.com
,但不能部署到 v1.api.example.com
或 staging.v1.example.com
。
今天,我们很高兴地宣布 Vapor 支持多级子域名。
要利用此功能,首先,确保将根域名添加为 Vapor 的域名。这可以通过 Vapor 仪表盘或使用 Vapor CLI 直接完成
vapor domain example.com
添加域名后,您必须申请证书。AWS 证书管理器提供的通配符证书只能保护单级子域名,因此要保护多级子域名,必须将子域名显式添加到证书中。
从 Vapor 仪表盘申请证书时,您可以通过将其添加为“域名”或任何“备用名称”来显式添加多级子域名。
或者,您可以从 Vapor CLI 申请证书
vapor cert my.really.long.multi.level.subdomain.laravelvapor.rocks
颁发证书后,您可以将多级子域名添加到 vapor.yml
文件的域名部分,并使用 Vapor CLI 执行完整部署。如前所述,通配符证书无法保护多级子域名,因此必须在 vapor.yml
文件中显式定义多级子域名 - 无法依赖通配符子域名。
id: 12345
name: vapor-rocks
environments:
production:
domain: my.really.long.multi.level.subdomain.laravelvapor.rocks
build:
- 'composer install --no-dev'
无论您使用 API Gateway v1、API Gateway v2 还是负载均衡器,Vapor 都将自动找到正确的证书来保护多级子域名并将其附加到您的环境中。
就是这样!假设您使用 Vapor 管理您的 DNS,则您的应用程序将在部署完成后通过您的多级子域名提供。
我们希望您喜欢使用 Vapor 的此新功能,并期待听到您可能提供的任何反馈!