【发布时间】:2020-10-20 23:21:39
【问题描述】:
一直在拉扯我的头发,试图弄清楚为什么 favicon.ico 不能正确加载。需要 Google Cloud AppEngine 专家的帮助。
该项目是一个 React 应用程序,其中gcp-build 将生成一个build 文件夹,其中包含favicon.ico。
考虑以下cloudbuild.yaml:
steps:
- name: node:12
args: ["yarn"]
- name: node:12
args: ["yarn", "gcp-build"]
- name: node:12
args: ["rm", "-rf", "node_modules"]
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy", "--version=mark0"]
timeout: "1600s"
而app.yaml 看起来像:
service: react-demo
runtime: nodejs12
handlers:
- url: /favicon.ico
static_files: build/favicon.ico
upload: build/favicon.ico
点击页面https://react-demo-dot-xxxx-xxxxx.df.r.appspot.com/favicon.ico总是会得到404错误。
有人可以帮忙吗?
【问题讨论】:
-
也许来自社区的其他post 的答案可以帮助您。尝试在接受的答案上使用 app.yaml 文件。
-
谢谢@daniel-ocando,我已经阅读了这篇文章。为了隔离问题,我将
app.yaml更改为只有一个handlers,并且React 应用程序不再通过/提供服务。然而..仍然无济于事。不过,这真的很奇怪,从 AppEngine 中查看source文件存在。你认为这是运行时的原因吗? -
您介意更新您正在使用的实际 app.yaml 文件吗?它是否包含以下处理程序:` - url: /(.*\.(json|ico))$ static_files: build/\ upload: build/.*\.(json|ico)$` (抱歉格式化,但我需要写一个答案,这样你才能正确地看到它。)
-
嗨@DanielOcando,不用担心格式。
app.yaml共享的正是部署到 AppEngine 的文件。
标签: google-app-engine google-cloud-platform app.yaml