我有一个节点应用程序,通过使用CentOS脚本设置我的环境,可以在Linux Server (bash6.5)上运行
env_nodejs.sh
#!/bin/bash
PATH=$PATH:/opt/nodejs/node-v6.9.4-linux-x64/bin
export PATH这样我就可以
# . ./env_nodejs.sh
# node /var/www/html/application/app.js这一切都很好,但是如果我在一个单独的脚本中执行以下操作
run_app.sh
#!/bin/bash
$COMMAND=/opt/nodejs/node-v6.9.4-linux-x64/bin/node
$SITE=/var/www/html/application/app.js
nohup $COMMAND $SITE > /tmp/nodeapp.log &这会运行节点服务器和应用程序,但会出现与npm相关的错误
Error: Failed to lookup view "control/users" in views directory "/views"我有一种感觉,这是因为没有设置环境,但是有没有办法在没有环境的情况下正确运行它,或者为npm位置传递额外的参数?
发布于 2017-01-19 17:21:54
它似乎正在尝试查找"/views"中的文件,这是您的文件系统中的顶级目录。
如果是这种情况,那么这里的问题不是PATH,而是PWD。
请确保在定义在应用程序中查找视图的位置时,不要说'views'或'./views',而要使用path.join(__dirname, 'views')。
您首先需要使用:var path = require(path);作为path
当然,这只是我的猜测,因为你没有包含任何你有问题的源代码部分。
https://stackoverflow.com/questions/41737921
复制相似问题