Files
easynode/server
zhanghao-njmu ea5518498f feat: 重命名执行模式为编码模式等、修复全屏模式显示问题等
- 统一controller方法,使用{res}/ {res, request}参数,移除非必要的uid参数和package-lock.json文件
- 将"执行模式"改为"编码方式",避免与"脚本执行开关"(手动/自动)产生歧义
- 在脚本编辑器中新增同样的编码方式选择功能
- 修复footerbar传递的执行脚本没有判断useBase64问题
- 修复全屏状态下规则编辑对话框、颜色选择器、以及所有下拉菜单不显示的问题,现在使用Teleport将规则编辑对话框动态挂载到全屏的document.fullscreenElement中,原来的下拉菜单和颜色选择器默认也会用 teleport 挂到 body,需要设置:teleported="false"以禁用
2025-10-13 15:49:08 +08:00
..
2025-04-17 22:11:28 +08:00
2025-08-24 19:50:08 +08:00

面板服务端

  • 基于Koa

遇到的问题

MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 input listeners added to [Socket]. Use emitter.setMaxListeners() to increase limit

  • ssh连接数过多(默认最多11个)
  • 每次连接新建一个vps实例断开则销毁

Error signing data with key: error:0D07209B:asn1 encoding routines:ASN1_get_object:too long

  • 经比对ssh的rsa密钥在前端往后端的存储过程中丢失了部分字符

获取客户端信息跨域请求客户端系统信息建立ws socket实时更新网络

  • 问题服务端前端套上https后前端无法请求客户端(http)的信息, 也无法建立ws socket连接(原因是https下无法建立http/ws协议请求)
  • 方案1: 所有客户端与服务端通信,再全部由服务端与前端通信(考虑:服务端/客户端性能问题). Node实现http+https||nginx转发实现https
  • 方案2: 给所有客户端加上https(客户端只有ip没法给个人ip签订证书)

构建运行包

log4js: 该module使用到了fs.mkdir()等读写apipkg打包后的环境不支持设置保存日志的目录需使用process.cwd()】

win闪退: 在linux机器上构建可查看输出日志

客户端

构建客户端服务, 后台运行 nohup ./easynode-server &

功能服务器基本信息【ssh信息保存在主服务器】