MongoDB 完全新手教學 -5 對外開放問題[allow remote access]
今天碰到MongoDB對外失敗的問題,在MongoDB本機都沒問題但是要外部連接都出錯。
一直跳出??!!^&*^#
Failed to connect to 1.2.3.456:27017 after 5000ms milliseconds, giving up.
後來一查,mongoDB預設是只有開127.0.0.1而已。
根據這篇文章我們必須先去修改/etc/mongod.conf
修改裡面的一個參數bind_ip
偷懶的方式[超級不安全] 就是把bind_ip改為 0.0.0.0 就是都允許 但是這樣是錯的 但是可以先拿來當作debug,來確認是不是非mongoDB的問題,[我自己就碰到其實根本是實體機器的firewall沒開port]
建議方式是根據需求設定
1.在同個內網裡面的兩台主機 A.MongoDB(區網IP==192.168.161.100) + B.後端程式SERVER(NodeJS Python PHP ...etc區網IP==192.168.161.200)
把mongod.conf
sudo vim /etc/mongod.conf
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,192.168.161.100 # Listen to local interface only, comment to listen on all interfaces.
修改為 127.0.0.1,192.168.161.100
2.外網IP為1.23.45.678 但是要從外面連近來使用
修改為 127.0.0.1,192.168.161.100,1.23.45.678
最後不要忘了要重新啟動mongoDB
sudo service mongod restart
因該就可以連結成功了