eggjs部署宝塔常见问题

最近在考虑做一个智能问答相关的网站,在选择后端服务器的时候觉得eggjs相对来说更适合我,然后就根据eggjs官网开始了搭建的工作,在搭建成功以后开始了部署工作,在此过程中发现了很多问题。

一键安装依赖配置

在项目跟路径创建index.js,我们在部署的时候宝塔会自动帮我们安装依赖,所以需要配置该文件。

typescript 复制代码
const egg = require('egg');

const workers = Number(process.argv[2] || require('os').cpus().length);
egg.startCluster({
  workers,
  baseDir: __dirname,
});

部署成功后不能启动

1.依赖下载失败

我们去查看package.json文件中的一下配置是否是node版本很大,或者比较高的情况,如果有这种情况下载依赖基本上就不会成功,然后你再去看你宝塔的环境是多少,如果小于该配置那么就确定了,就是版本问题。

typescript 复制代码
"engines": {
    "node": ">=18.0.0"
  }

解决办法:

在宝塔的终端中运行以下命令,该命令的含义事版本安装出错是跳过报错继续安装。

typescript 复制代码
yarn config set ignore-engines true

2.启动命令错误

typescript 复制代码
// 第一种 --推荐
"start": "egg-scripts start --port=7002 --daemon --title=egg-server-test --ignore-stderr",

// 第二种
"start": "egg-scripts start --daemon --title=egg-server-test --ignore-stderr",

部署后报错405

当我们接口配置了https以后,我们会在vue中配置跨域请求,当我们配置了跨域后,请求接口会出现405的情况,这个时候我们需要在在部署的配置文件中配置代理,当我们做了以下代理以后然后重启服务器,就可以对接口进行访问了。

typescript 复制代码
location /api {
  # 这个是把apii前缀给去掉
  rewrite ^/api/(.*)$ /$1 break;
  # 这个就是后端的接口地址
  proxy_pass http://****;
}

总结

以上的讲个问题就是我在部署eggjs时所遇到的最大的问题,如果你也正好需要的该问题,希望能帮助当你,我也做一个小小的记录。我写的智能问答也已经成功了,如果感兴趣可以试试。

相关推荐
多加点辣也没关系8 小时前
JavaScript|第4章:类型转换
开发语言·javascript
yqcoder9 小时前
httpOnly 是什么,又有什么用?
开发语言·前端·javascript
烬羽9 小时前
还在手动拼路径、写回调地狱?一文吃透 Node.js 的 path 和 fs
javascript·程序员·node.js
mONESY9 小时前
LangChain JS 高性能并行执行解析、工具调用底层封装
javascript
迅速的自行车10 小时前
从一段模板说起
前端·javascript·vue.js
YIAN11 小时前
LangChain JS 工具调用实战:基于 DeepSeek-V4-Flash 实现本地文件读取 AI 代码助手(完整可运行源码)
javascript·langchain·前端框架
尼斯湖皮皮怪11 小时前
iceCoder 记忆系统深度分析
前端·javascript
爸爸61911 小时前
07 ArkTS 基础类型与接口定义:从 TypeScript 到鸿蒙的类型升级
javascript·华为·typescript·harmonyos·鸿蒙系统
默_笙12 小时前
🌏 MCP 是 AI 界的 USB-C:一个协议让所有模型都能用上所有工具
前端·javascript
月光刺眼14 小时前
用LangChain 打造第一个 Agent:LLM 大脑与 Tool 手脚的完整闭环
javascript·人工智能·全栈