찾다

 >  Q&A  >  본문

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

使用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 0
cd project
pm2 start index.js
怪我咯怪我咯2784일 전586

모든 응답(1)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-04-17 15:49:31

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

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

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

    3. 或者用 root 启动 Pm2

    회신하다
    0
  • 취소회신하다