做了个用nodejs、mongodb、socketio的聊天室,但是访问的配置只能是localhost,我改成别的域名后,连db都不能访问了,怎么破?
发布于 1年前 作者 hwoarangzk 1383 次浏览

在同一台电脑上用localhost作为域名,可以多开窗口实现聊天室的功能。然后我想改成同一个局域网里,多台不同的电脑都能用,于是host里配了我的实际ip到chat.test.com,mongodb(用这个来保存注册用户的信息)里的设置写的是chat.test.com,还有socketio里访问设置的是chat.test.com,但是以chat.test.com访问的时候,mongodb会报没有授权访问。另外,端口怎么解决呢?我写的是3000端口,但是host里怎么配?访问的时候url又要带上这个3000吗?谢谢~

6 回复

chat.test.com 127.0.0.1:3000

mongodb就不知道了

host里我写的是: 172.100.1.1 chat.test.com 当然这个ip是我实际的ip 不是127.0.0.1 写127.0.0.1的话别的电脑还是访问不到吧 mongodb的配置是: module.exports = { cookieSecret: 'chat’, db: 'chat’, host: ‘localhost’ }; 这里host改成chat.test.com mongodb就会说无授权 查百度也没找到方法 请问怎么搞啊?

干嘛要改成chat.test.com?mongodb的host就用localhost

mongodb的host我保持了localhost host里写的是: 我的ip test.chat.com 聊天页面里:socket = io.connect(‘http://test.chat.com’); 访问的时候url是test.chat.com:3000 果然能用了 谢谢楼上的帮助 另外还想问下 有什么办法能在输入url的时候,不输入这个3000端口吗? host里我试过: 我的ip test.chat.com:3000 浏览器无法打开test.chat.com 请问这个问题有办法解决么?

3000改称80就不用输入端口了

nodejs里的listen,不带参数的话,就是默认启动80端口? 还是说,host里,都不写端口的话,也是默认访问80端口?

回到顶部