前同事留下的nodejs+MongoDB项目在阿里云的服务器上运行的,那天另一个同事交给阿里云的技术人员去配置了下HTTPS的ssl证书后,原来的IP+端口访问的项目突然就不行了。因为我不懂这个,在网上查了半天(前同事处于失联状态),发现运行这个app.js文件报下面的错误,因为数据库的服务状态是开启着的。求大佬告知原

这是我附加了一些配置文件(应该是,文件是js的后缀)的截图和服务器状态的截图参考,求别笑话,真的不懂。


图片上传中...

这里报错

数据库连不上。。

可能愿意:

你的防火窗是否开放了


证书和域名可能不匹配的问题


查看端口对应的服务是否被占用

根据阿里云配置完以后出了一些问题,我的问题基本就是这两个原因。

1,遇到了端口被占用,通过命令行找到了对应服务,关闭。

2,80端口默认是http请求端口,443默认是https请求端口。

端口占用的处理:https://blog.csdn.net/qq_40693603/article/details/107088694

关于数据库连接不上的问题,我并不清楚是因为什么原因引起的,有没有可以参考排查方式。

我的阿里云防火墙是关闭的,应该跟防火墙没啥关系,之前这个项目是ip+3000端口访问的,阿里云实例配置的有3000端口,现在这个端口应该是没有监听,监听的话应该是启动这个项目的app.js 就是用node app.js命令吧?但是运行这个命令,报数据库连接的错误,我不太明白这个报错是因为什么

你通过http能访问吗

http和https都不行.....

先通过工具测试下,看看是否能连接成功,如果不能,说明安装的有问题,跟代码没关系,如果能连上,看下进一步查配置文件!有帮助的话。关注下呗

好的 我会尝试一下

生命在于折腾

发生错误:npm ERR! code ELIFECYCLE,可以百度查一下,应该是nodejs依赖的问题,试试

先把项目copy到另外目录备份,然后执行:

rm -rf node_modules

rm package-lock.json

npm cache clear --force

npm install

然后再npm start看看


还没解决?

解决了 托一个朋友解决的 说一下过程

首先 用账户密码的方式连接了下数据库 发现能连上 然后查看了一下数据库 正常显示

然后看了下mongodb.long的日志文件


后来查了下进程


杀了两个进程


然后 mongod --dbpath=/opt/data/db -f /opt/mongodb/config?找一下mg的配置文件

先去mg下面找到对应的配置文件 cat 文件看下 然后在-f后边加上正确的文件路径

结果是


cat mongodb.config


再用ps命令查一下mong


ps -ef | grep mong


然后node命令启动了下app.js


Ctrl+c 先退出 使用pm2 start app.js启动


然后项目就行了 好像知道 但是又不是十分明白.................

Ctrl+c 先退出??难道是之前线程 挂了 没有退出?

母鸡 我不是搞这个技术的 俺也不懂