【发布时间】:2022-11-02 04:05:07
【问题描述】:
我在 Google App Engine 上有一个 Strapi 应用程序作为默认服务。
App Engine 生成的默认 URL 是 https://my-project.uc.r.appspot.com
当我为我的默认服务创建任何其他版本或部署其他服务时,新 URL 将类似于:https://[标识符]-dot-my-project.uc.r.appspot.com
我的问题是,如果我更换[标识符]无论如何,它都会打开我的 Strapi 应用程序根页面。
我不认为这与 Strapi 有任何关系,它可能是 App Engine 的一个功能。
我的问题是:如何阻止这种情况发生?我只想匹配正确的 URL。也就是说,如果我创建一个“开发”版本,我应该能够使用以下 URL 访问它:https://dev-dot-my-project.uc.r.appspot.com,但我不希望匹配任何其他 URL,例如:https://12345-dot-my-project.uc.r.appspot.com
我正在使用带有default app.yaml from Strapi docs 的标准环境
runtime: nodejs16
instance_class: F2
env_variables:
HOST: '0.0.0.0'
NODE_ENV: 'production'
DATABASE_NAME: 'strapi'
DATABASE_USER: 'postgres'
DATABASE_PASSWORD: '<password>'
INSTANCE_CONNECTION_NAME: '<instance_identifier>'
beta_settings:
cloud_sql_instances: '<instance_identifier>'
当应用程序部署到 App Engine 时,会自动修改 app.yaml 以添加一些默认参数。
runtime: nodejs16
env: standard
instance_class: F2
handlers:
- url: .*
script: auto
我想这可能是url: .* 的原因,并试图将其更改为url: /.* (Docs),但App Engine 仍然在最后再次添加url: .*,它将有两个处理程序。
【问题讨论】: