【问题标题】:Updating a React App hosted on Google Cloud Storage getting 404 errors更新托管在 Google Cloud Storage 上的 React 应用程序出现 404 错误
【发布时间】:2020-03-20 15:08:15
【问题描述】:

我在 GCS 上托管了一个 React 应用程序,它运行良好。但是,有时在我部署新代码后,我会在一些已被 webpack 代码拆分的 js 文件上收到 404 错误。但是,当我检查我的存储桶时,我可以验证该文件是否存在,但无法直接访问它。这个问题总是发生大约一个小时,然后我的网站恢复正常。

我已将所有文件设为公开,这是我的部署脚本: "env-cmd -f .env.staging.local react-scripts build && gsutil rsync -R -d build gs://mysite && gsutil setmeta -h \"Cache-Control:no-cache, max-age=0\" gs://mysite/index.html"

这非常令人困惑且难以调试,因为我可以看到该文件存在,但由于某种原因它没有被 index.html 读取。我也试过清除边缘缓存,所以也许这也不是缓存问题?

【问题讨论】:

  • 我想知道您在 GCS 上托管的 React App 是否是静态的。如果不是 statis,我强烈建议您使用 Google App Engine 部署它,但要继续进一步调查,最好知道您托管的网站是否是静态的。谢谢!
  • 感谢您的回答。我的网站是静态的,我的 Node 后端托管在云上运行。

标签: reactjs google-cloud-storage


【解决方案1】:

经过一些试验和研究,我将代码部署到 Cloud Storage 的方式似乎存在缓存问题。我已经更新了我的部署代码,以避免 js 被“从磁盘缓存”。

react-scripts build && gsutil -h \"Cache-Control:no-cache, max-age=0\" rsync -R -d build gs://mysite

【讨论】:

    猜你喜欢
    • 2023-01-25
    • 1970-01-01
    • 2020-08-11
    • 2020-03-24
    • 1970-01-01
    • 2020-10-31
    • 1970-01-01
    • 2021-01-05
    • 2016-11-05
    相关资源
    最近更新 更多