gpt4 book ai didi

node.js - NODE JS - 永远的启动路径问题

转载 作者:太空宇宙 更新时间:2023-11-03 23:40:46 26 4
gpt4 key购买 nike

我有一个 server.js 文件定义如下:

    var iniparser = require('iniparser');
var inihost;
var inidbuser;
var inidbpass;
var inidbname;


var config = iniparser.parseSync('../setup_db/config.ini');
inihost = config.db_hostname;
inidbuser=config.db_username;
inidbpass=config.db_password;
inidbname=config.db_name;
.....

重新启动时,我有一个 crontab,它应该自动永远启动服务器:

@reboot /usr/bin/sudo /usr/local/bin/forever start /var/www/html/rubrica/chat/server.js

有趣的是,如果我从具有完整路径的任何目录启动服务器,例如:

forever start /var/www/html/rubrica/chat/server.js

服务器启动得很好..但是,如果我从/root/.forever/ 目录中运行相同的命令,服务器将给出以下错误:

 ENOENT, no such file or directory '../setup_db/config.ini'

所以每当我重新启动机器时,我都会收到该错误......这样的事情怎么可能?

最佳答案

iniparser.parseSync() 的参数不像 require() 那样相对于当前文件,而是相对于当前工作目录。使用:

var path = require('path');
var config = iniparser.parseSync(path.join(__dirname, '../setup_db/config.ini'));

关于node.js - NODE JS - 永远的启动路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24200697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com