无法分配请求的地址 – bind(2)(Errno :: EADDRNOTAVAIL)
我在centos 6.3服务器上使用rails for teambox,实际上这只是在实际应用之前的反复试验。
- 我正在使用2个运行在相同的centos版本和精确副本上的虚拟框,VM2只运行将远离VM1的mysql
- 我已经尝试过mysql连接#nc并且已连接
- VM1(192.168.7.201)和VM2(运行MYSQL的192.168.7.202)
- 我在my.cnf中的远程机器(VM2)上有绑定地址,绑定地址= 192.168.7.202
- 这是我的database.yml
发展:
适配器:mysql
主持人:192.168.7.202
港口:3306
用户名:teambox
密码:通过
数据库:teambox
我试图使用rails server -e development -b 192.168.7.202
并给出此错误
Exiting /usr/local/lib/ruby/gems/1.8/gems/mongrel-1.1.5/lib/mongrel/tcphack.rb:12:in `initialize_without_backlog': Cannot assign requested address - bind(2) (Errno::EADDRNOTAVAIL)
请帮帮我
试试这个
rails server -e development -b 0.0.0.0 -p 3000
0.0.0.0表示它侦听本地计算机上的所有IPv4地址
没有IPv6,Rails 5.0.0.1服务器无法正常工作。 您需要从/etc/sysctl.conf文件启用IPv6(默认情况下启用IPv6)。 如果您有任何行,请删除或注释这些行。
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
重新启动服务器以启用IPv6。
尝试
rails服务器
请尝试以下方法:
development: adapter: mysql host: 127.0.0.1 port: 3306 username: teambox password: pass database: teambox
(要么)
development: adapter: mysql host: localhost port: 3306 username: teambox password: pass database: teambox
我认为上述任何一种都可行。
这意味着服务器已在该端口上运行
尝试
rails server -e development -p 3001 -b 192.168.7.202
错误即将来临,因为3000端口已在使用中。 该命令试图在同一个端口运行。 所以改变端口并运行。 添加这个也-p 3002