検索

ホームページ  >  に質問  >  本文

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
怪我咯怪我咯2786日前592

全員に返信(1)返信します

  • PHP中文网

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

    root 他のユーザーにはルート ディレクトリへのアクセス許可がありません。どのユーザーが pm2 を実行しているかを確認してください。

    1. プロジェクトを別のディレクトリに移動し、権限と所有者を確認します。

    2. ルート ディレクトリで他のユーザーの読み取り権限を開きます。その後、プロジェクトにも読み取り権限が必要です

    3. または root で Pm2 を起動します

    返事
    0
  • キャンセル返事