Running Meteor on localhost fails with RangeError: port should be >= 0 and < 65536: NaN
Running Meteor on localhost fails with RangeError: port should be >= 0 and < 65536: NaN
我正在 运行使用 node 和 Mongodb 在本地主机上创建一个项目,但是当我尝试在数据库上创建一个集合时它失败并出现错误。
我正在使用此脚本构建项目:
cd ~/Meteor/daily-reminder
meteor build ~/build-output-daily-reminder --server=http://localhost
cd ~/build-output-daily-reminder
tar -xvzf daily-reminder.tar.gz
rm daily-reminder.tar.gz
cd ~/build-output-daily-reminder/bundle
(cd programs/server && npm install)
export MONGO_URL='mongodb://username:password@http://localhost:27017/daily-reminder'
export ROOT_URL='http://localhost/'
export PORT='3000'
echo "now run node main.js"
node main.js
(我在真实代码中使用了我实际的 mongodb 用户名和密码)。
项目构建良好,但节点不会 运行。它生成此错误:
now run node main.js
/home/shelagh/build-output-daily-reminder/bundle/programs/server/node_modules/fibers/future.js:245
throw(ex);
^
RangeError: port should be >= 0 and < 65536: NaN
at Socket.connect (net.js:917:13)
at Object.exports.connect.exports.createConnection (net.js:92:35)
at [object Object].Connection.start (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection.js:173:29)
at _connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:211:16)
at [object Object].ConnectionPool.start (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:231:3)
at Server.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/server.js:708:18)
at Db.open (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:281:23)
at connectFunction (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/mongo_client.js:275:67)
at Function.MongoClient.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/mongo_client.js:345:5)
at Function.Db.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:2094:23)
如果我使用新创建的 Meteor 项目,那么节点 运行 没问题。但是,一旦我将此行添加到我的 js 文件的开头,它就会失败:
Tasks = new Mongo.Collection("tasks");
服务器尝试与数据库通信时似乎出现了一些问题。但是我的 MONGO_URL 看不出有什么问题:端口被指定为 27017。从错误来看,似乎端口甚至没有被传入。
我正在使用节点 v0.12.7 和 MongoDB shell 版本:2.4.9。我通过在单独的终端 window 中输入 'mongo' 来启动 mongo。
你的MONGO_URL
是错误的,它重新定义了你指定主机的协议。
改变
export MONGO_URL='mongodb://username:password@http://localhost:27017/daily-reminder'
至
export MONGO_URL='mongodb://username:password@localhost:27017/daily-reminder'
我正在 运行使用 node 和 Mongodb 在本地主机上创建一个项目,但是当我尝试在数据库上创建一个集合时它失败并出现错误。
我正在使用此脚本构建项目:
cd ~/Meteor/daily-reminder
meteor build ~/build-output-daily-reminder --server=http://localhost
cd ~/build-output-daily-reminder
tar -xvzf daily-reminder.tar.gz
rm daily-reminder.tar.gz
cd ~/build-output-daily-reminder/bundle
(cd programs/server && npm install)
export MONGO_URL='mongodb://username:password@http://localhost:27017/daily-reminder'
export ROOT_URL='http://localhost/'
export PORT='3000'
echo "now run node main.js"
node main.js
(我在真实代码中使用了我实际的 mongodb 用户名和密码)。
项目构建良好,但节点不会 运行。它生成此错误:
now run node main.js
/home/shelagh/build-output-daily-reminder/bundle/programs/server/node_modules/fibers/future.js:245
throw(ex);
^
RangeError: port should be >= 0 and < 65536: NaN
at Socket.connect (net.js:917:13)
at Object.exports.connect.exports.createConnection (net.js:92:35)
at [object Object].Connection.start (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection.js:173:29)
at _connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:211:16)
at [object Object].ConnectionPool.start (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:231:3)
at Server.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/server.js:708:18)
at Db.open (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:281:23)
at connectFunction (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/mongo_client.js:275:67)
at Function.MongoClient.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/mongo_client.js:345:5)
at Function.Db.connect (/home/shelagh/build-output-daily-reminder/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:2094:23)
如果我使用新创建的 Meteor 项目,那么节点 运行 没问题。但是,一旦我将此行添加到我的 js 文件的开头,它就会失败:
Tasks = new Mongo.Collection("tasks");
服务器尝试与数据库通信时似乎出现了一些问题。但是我的 MONGO_URL 看不出有什么问题:端口被指定为 27017。从错误来看,似乎端口甚至没有被传入。
我正在使用节点 v0.12.7 和 MongoDB shell 版本:2.4.9。我通过在单独的终端 window 中输入 'mongo' 来启动 mongo。
你的MONGO_URL
是错误的,它重新定义了你指定主机的协议。
改变
export MONGO_URL='mongodb://username:password@http://localhost:27017/daily-reminder'
至
export MONGO_URL='mongodb://username:password@localhost:27017/daily-reminder'