Google App Engine - 使用 Google 域中的自定义域时出现 404 错误
Google App Engine - 404 Error when using Custom Domain from Google Domains
我在 GAE 以“myproject.appspot.com”格式提供的 URL 上有一个框架 Google App Engine 运行。我有两个服务 - 一个 运行 后端 Node/Express 服务器,另一个用于 React 前端。后端服务有url“api-dot-myproject.appspot.com”和前端“client-dot-myproject.appspot.com”。我已经独立部署了每项服务以及根级别 dispatch.yaml,并让这些 GAE 提供的 url 开始工作。当我转到 Google 提供的 URL 时,我部署的服务按预期工作。但是,我也尝试使用 Google Domains 中的自定义域,这给我带来了麻烦。我已按照 Google 提供的说明进行操作 - 我首先从 Google 购买了域,然后将其添加到 Google App Engine。然后,我的 GAE 应用程序为我提供了 A、AAAA 和 CNAME 记录,以添加到我的 Google 域“自定义资源记录”中。
然后我等了超过 24 小时才尝试访问 mydomain.app(我购买的域名)。但是,尝试访问该页面会导致 404 错误。
一段时间以来,我一直在努力解决这个问题,并且我搜索了之前关于该主题的所有 Whosebug 问题,但都无法解决。任何帮助将不胜感激。
dispatch.yaml:
dispatch:
- url: "*client-dot-myproject.appspot.com/*"
service: client
- url: "*mydomain.app/*"
service: client
- url: "*api-dot-myproject.appspot.com/*"
service: api
- url: "*/*"
service: client
api.yaml
runtime: nodejs12
service: api
handlers:
- url: /api/
script: auto
- url: /
script: auto
client.yaml
runtime: nodejs12
service: client
handlers:
- url: /static/js/(.*)
static_files: build/static/js/
upload: build/static/js/(.*)
- url: /static/css/(.*)
static_files: build/static/css/
upload: build/static/css/(.*)
- url: /static/media/(.*)
static_files: build/static/media/
upload: build/static/media/(.*)
- url: /(.*\.(json|ico|png))$
static_files: build/
upload: build/.*\.(json|ico|png)$
- url: /
static_files: build/index.html
upload: build/index.html
http_headers:
Access-Control-Allow-Origin: "*"
- url: /.*
static_files: build/index.html
upload: build/index.html
http_headers:
Access-Control-Allow-Origin: "*"
确实是最愚蠢的错误之一 - 我在某个时候切换了 gcloud 项目并忘记使用 gcloud init
重新初始化。
我在 GAE 以“myproject.appspot.com”格式提供的 URL 上有一个框架 Google App Engine 运行。我有两个服务 - 一个 运行 后端 Node/Express 服务器,另一个用于 React 前端。后端服务有url“api-dot-myproject.appspot.com”和前端“client-dot-myproject.appspot.com”。我已经独立部署了每项服务以及根级别 dispatch.yaml,并让这些 GAE 提供的 url 开始工作。当我转到 Google 提供的 URL 时,我部署的服务按预期工作。但是,我也尝试使用 Google Domains 中的自定义域,这给我带来了麻烦。我已按照 Google 提供的说明进行操作 - 我首先从 Google 购买了域,然后将其添加到 Google App Engine。然后,我的 GAE 应用程序为我提供了 A、AAAA 和 CNAME 记录,以添加到我的 Google 域“自定义资源记录”中。
然后我等了超过 24 小时才尝试访问 mydomain.app(我购买的域名)。但是,尝试访问该页面会导致 404 错误。
一段时间以来,我一直在努力解决这个问题,并且我搜索了之前关于该主题的所有 Whosebug 问题,但都无法解决。任何帮助将不胜感激。
dispatch.yaml:
dispatch:
- url: "*client-dot-myproject.appspot.com/*"
service: client
- url: "*mydomain.app/*"
service: client
- url: "*api-dot-myproject.appspot.com/*"
service: api
- url: "*/*"
service: client
api.yaml
runtime: nodejs12
service: api
handlers:
- url: /api/
script: auto
- url: /
script: auto
client.yaml
runtime: nodejs12
service: client
handlers:
- url: /static/js/(.*)
static_files: build/static/js/
upload: build/static/js/(.*)
- url: /static/css/(.*)
static_files: build/static/css/
upload: build/static/css/(.*)
- url: /static/media/(.*)
static_files: build/static/media/
upload: build/static/media/(.*)
- url: /(.*\.(json|ico|png))$
static_files: build/
upload: build/.*\.(json|ico|png)$
- url: /
static_files: build/index.html
upload: build/index.html
http_headers:
Access-Control-Allow-Origin: "*"
- url: /.*
static_files: build/index.html
upload: build/index.html
http_headers:
Access-Control-Allow-Origin: "*"
确实是最愚蠢的错误之一 - 我在某个时候切换了 gcloud 项目并忘记使用 gcloud init
重新初始化。