搜尋

首頁  >  問答  >  主體

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 天前588

全部回覆(1)我來回復

  • PHP中文网

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

    root 根目錄別的使用者沒權限,看看pm2是哪個使用者運行的。

    1. 把 project 移動到其它目錄並確保權限和擁有者,

    2. 把 root 目錄其它使用者的 讀權限打開,然後 project 也要有讀

    3. 或用 root 啟動 Pm2

    回覆
    0
  • 取消回覆