node.js - 有没有朋友在使用pm2时遇到__dirname的值不是当前项目路径而是root目录的?如何解决呢?

浏览:17日期:2022-09-25

问题描述

使用pm2管理node进程时,出现报错,说找不到目录。

Error: Failed to lookup view '500' in views directory '/root/views'

仔细排查之后,发现直接运行node index.js是可以的,没有任何问题。如果通过pm2启动应用,就会报错。服务器中的目录情况是root下面有个project文件夹,可是使用pm2启动之后__dirname应该是指向project,但是却指向了root根目录,就报错了。

有朋友遇到过这个问题吗?该如何解决呢?

谢谢。

已解决删除进程再重新启动进程就可以解决啦。

pm2 delete 0cd projectpm2 start index.js

问题解答

回答1:

root 根目录别的用户没权限,看看pm2是哪个用户运行的。

把 project 移动到其它目录并确保权限和拥有者,

把 root 目录其它用户的 读权限打开,然后 project 也要有读

或者用 root 启动 Pm2

相关文章: