在由Nuxt.js驱动的SPA应用程序(无SSR)中,我发现我的Chrome控制台出现错误,提示manifest.1234.json
无法使用404加载。Chrome是正确的,此清单文件不存在服务器。
但是,当我使用开发工具检查Element并搜索“清单”时,我可以在HTML中看到行加载manifest.abcd.json
-服务器上存在 的行。
为什么向浏览器提供的初始HTML包含对旧的,不正确的清单版本的引用?
我以为也许只是PM2缓存了一些旧代码,但是我尝试了kill
和reload
和reset
,没有帮助。
我以为可能是因为我不小心提交了应用程序dist文件的构建,因此在服务器上,我完全删除了构建文件夹,并运行了一个新的npm run build
然后运行pm2 start
,但这没有帮助。
我在此ecosystem.config.js
文件的帮助下运行PM2,该文件运行良好,并且没有提到任何类型的缓存:
module.exports = {
apps: [
{
name: 'gateway',
port: 3000,
script: './nuxt-start.js',
cwd: '/home/forge/some-example.com',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}
]
};
要将更改部署到我的应用中,我只是在做npm run build
,然后执行pm2 pull repo commit123a
,以引入最新的更改。只是我有这个奇怪的清单加载错误,有时会触发我的应用向用户报告前端错误(捕获错误)。
我已经在服务器中运行grep
来找到对错误清单文件的任何引用,但是没有匹配-我认为它可能在RAM中,但是可以肯定的是,这是缓存,然后还有更多缓存问题将显示出来,而不仅仅是这个。
404是workbox-core.prod.js
的请求的发起者
我什至尝试在请求所要的位置手动创建一个manifest.1234.json
文件,但甚至不能解决404问题
有什么想法吗?