discussjs / discuss

一款简单,安全,免费的评论系统 | A simple, safe, free comment system
https://discuss.js.org
MIT License
77 stars 14 forks source link

No "exports" main defined #26

Open spencer-luo opened 2 weeks ago

spencer-luo commented 2 weeks ago

今天尝试在自己的服务端部署,遇到一个新的问题: No "exports" main defined in /home/www/discuss_comment/node_modules/discuss/package.json

执行 node index.js后报错:

image

系统环境:

image

package.json :

{
  "name": "discuss_comment",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "discuss": "1.2.6"
  }
}

index.js

const discuss = require('discuss')

// 选择以什么方式运行
discuss.server() // 服务器使用 (Server)

discuss.main() // 无服务器使用 (ServerLess)

.env

image
Lete114 commented 2 weeks ago

看上去貌似是没问题的,但是index.js里你因该删除掉discuss.main() // 无服务器使用 (ServerLess),因为他是为无服务器准备的,你不能同时使用两种运行方式

至于报错的原因我分析出可能是因为,npm install的时候没有完整安装,可以尝试清理以下npm缓存npm cache clean --force,删除 node_modules 文件夹 rm -rf node_modules,重新安装依赖npm install

如果按照以上步骤操作后仍然有错误的话,你可以试试将index.js内容改为

// index.js
const discuss = require('./node_modules/discuss/src/server/index')

discuss()
spencer-luo commented 2 weeks ago

修改成 const discuss = require('./node_modules/discuss/src/server/index') discuss()

生效了。

image
spencer-luo commented 2 weeks ago

现在又遇到一个新的问题,需要请教一下。

发布评论请求时,提示: Database connect fault。是我的数据库配置有什么问题吗?

image
Lete114 commented 2 weeks ago

抱歉,我说错了 因该是这样

// index.js
const discuss = require('./node_modules/discuss/index')

discuss.server()
spencer-luo commented 2 weeks ago
discuss.server()

你好~ 修改之后还会报错,服务器的log如下,知道是什么问题吗?

image
spencer-luo commented 2 weeks ago

HTTP返回的错误码是200,但是前端提示“评论失败”。服务器查了一下数据库,是空的,说明添加成功。

image
spencer-luo commented 2 weeks ago

看log提示应该是:从d_admin表里查不到管理员数据,这个管理员账号需要怎么初始化呢?

image
Lete114 commented 2 weeks ago

你得初始化管理员账号

image