You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Ubuntu服务器上MongoDB的连接URL用于Flutter应用

解决Flutter连接Ubuntu Server上MongoDB的连接URL问题

你当前看到的mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.6.1只能用于同一台机器内的本地连接,Flutter应用如果在其他设备(手机、另一台电脑)上运行,这个地址完全没用,得按下面的步骤调整:

1. 获取Ubuntu服务器的实际对外IP

在Ubuntu服务器上执行命令:

ip addr show

找到你的对外网卡(通常是eth0或wlan0),查看inet字段后的IP地址,比如192.168.1.100——这就是其他设备要连接的服务器地址。

2. 修改MongoDB配置允许远程访问

默认MongoDB只允许本地连接,得改配置开放外部访问:

  1. 编辑MongoDB配置文件:
sudo nano /etc/mongod.conf
  1. 找到net区块,把bindIp的值从127.0.0.1改成0.0.0.0(允许所有IP访问),或者指定你Flutter设备的IP(更安全),比如:
net:
  port: 27017
  bindIp: 127.0.0.1,192.168.1.101
  1. 重启MongoDB服务生效:
sudo systemctl restart mongod

3. 构造正确的连接URL

根据你的情况选择对应格式:

  • 无密码验证(测试环境):
    mongodb://[服务器IP]:27017/[你的数据库名]
    
    比如服务器IP是192.168.1.100,数据库叫test_db,就是:
    mongodb://192.168.1.100:27017/test_db
    
  • 有用户名密码验证:
    mongodb://[用户名]:[密码]@[服务器IP]:27017/[你的数据库名]?authSource=admin
    

4. 确保网络连通

  • 在Flutter设备上执行ping [服务器IP],确认能通
  • 开放Ubuntu防火墙的27017端口:
    sudo ufw allow 27017
    

内容的提问来源于stack exchange,提问作者user19767292

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:50:26