You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何修改文件后GCloud App Engine部署的SvelteKit网站未更新?

解决GCloud App Engine部署SvelteKit后内容不更新的问题
  • 确认构建流程正确执行
    本地正常但部署无变化,先检查部署前是否执行了生产构建。确保package.json里的build脚本正确:

    "scripts": {
      "build": "svelte-kit build",
      "start": "node build/index.js"
    }
    

    部署前先本地运行npm run build,确认build目录生成了最新产物。同时检查app.yaml的entrypoint是否指向构建后的启动文件,比如:

    runtime: nodejs20
    entrypoint: npm start
    
  • 检查部署文件是否包含构建产物
    查看.gitignore,如果里面忽略了build、.svelte-kit这类构建目录,部署时这些文件不会被上传到App Engine,导致服务器仍用旧产物。要么修改.gitignore移除这些目录的忽略规则,要么部署时手动指定包含(比如gcloud app deploy --include-files build/**)。

  • 清除缓存验证
    浏览器可能缓存了旧静态资源,尝试用Ctrl+F5强制刷新。如果是App Engine的CDN缓存问题,可在app.yaml中配置静态资源缓存策略,缩短缓存时间:

    handlers:
      - url: /static
        static_dir: build/static
        expiration: "10m"
    
  • 确认部署版本为默认版本
    执行gcloud app versions list查看所有部署版本,检查最新版本是否设为默认。如果不是,用gcloud app services set-default [服务名] --version [新版本号]将新版本设为默认,或者直接访问新版本专属URL(比如https://[版本号]-dot-[项目ID].uc.r.appspot.com)验证内容是否更新。

  • 检查SvelteKit适配器配置
    确保使用了适配Node.js的@sveltejs/adapter-node,并在svelte.config.js中正确配置:

    import adapter from '@sveltejs/adapter-node';
    
    export default {
      kit: {
        adapter: adapter()
      }
    };
    

    错误的适配器会导致构建产物无法在App Engine的Node.js环境正常运行,进而显示旧内容。

内容的提问来源于stack exchange,提问作者DrCool

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 11:44:57