bug大汇总
2023-08-05 15:22:27 0 举报
AI智能生成
bug大汇总
作者其他创作
大纲/内容
其他
bluehost免费域名证书申请问题
场景:英分博客搭建在bluehost上,<br>需要申请免费的 let's encrypt 证书<br><br>在已经有证书的情况,需要<br>先删除证书,再点击自动生成 ssl 证书<br>即可完成安装免费证书<br>
工程化方向
nginx配置问题
知识点
root路径和 alias路径的区别
root :root 路径+location路径
alias :alias 路径替换掉 location 路径<br>(alias是location别名的意思)
nuxt部署问题
本地跑项目没问题,但部署<br>到环境之后页面 service error
原因大部分是:编译时候有 build nuxt failed <br>(nuxt server端启动失败)
排查手段
1. 去k8s看编译日志
2. 如果k8s没有错误信息,<br>就去本地编译看有没有错误信息<br>
(可能是第三方包自动升级了,需要锁死版本,也可能是缺少第三方包)
大部分是由于 package.json 变更导致本地和<br>发布时的 node_modules 第三方包版本不一致导致
知识点
1. package.json 变更后,如果没有修改相应的 lock 文件,<br>在部署时 即重新 yarn 的过程中会只根据 package.json 进行<br>安装包,所以会导致其他第三方包在版本范围内自动升级。
2. yarn 与 npm 区别,及相应的 lock 的工作流程
开发规范
1. 业务开发中升级包 和 安装包 要使用正规手段<br>npm install packageName / yarn add(upgrade) packageName
2. 业务中升级包后,切记将 package.json 和 lock 文件都要上传,<br>不然会有内容不一致的情况,导致在 yarn ( npm install )会忽略lock<br>中的版本 重新安装
项目部署迁移到新平台k8s的问题
测试环境没问题,部署线上之后,访问不通<br>
排查手段
1. 登录容器查看日志有报错:ERRREFUSE。
2. 仔细查阅报错原因,发现可能是环境是IPV6问题
3. 登录线上环境容器日志 查看 ifconfig,只有ip6的地址<br>没有ip4的地址,而测试环境两个都有
4. 查看 nuxt 配置,启动服务的IP为0.0.0.0
5. 查阅 node 官网API,如果需要同时支持 ip4 ip6 需要修改<br>server.listen(port, '0.0.0.0') 改为 server.listen(port) 即可
经验证完成修复
部署时环境问题
开发规范
避免设置只有线上环境才开启某项功能,<br>有可能导致问题只在线上环境报漏出来
测试、预发、线上环境的node版本需要保持一致,<br>避免切换环境后有问题。
编译环境的node版本和运行的node版本最好一样
知识点
编译环境的node版本和运行的node版本是分开设置的,<br>在k8s中可以通过shell脚本安装编译环境的node,在dockerfile中<br>设置运行环境的node
前端知识
electron
主进程和渲染进程之间通信注意顺序问题
发布订阅消息时需要注意时序性问题,避免消息错乱
eg: <br>event.emit('test', data)<br>event.on('test', fn)<br>需改为:<br>event.emit('test'+timeStamp, data)<br>event.on('test'+timeStamp, fn )<br>
jsbridge
0 条评论
下一页