我重启了我的系统,现在我在CentOS 6.5上启动我的ejabberd服务器时出现问题。 我的ejabberd.log文件的尾部如下:
[{mod_proxy65,start,2,[{file,"src/mod_proxy65.erl"},{line,48}]},
{gen_mod,start_module,3,[{file,"src/gen_mod.erl"},{line,70}]},
{lists,foreach,2,[{file,"lists.erl"},{line,1323}]},
{ejabberd_app,start,2,[{file,"src/ejabberd_app.erl"},{line,67}]},
{application_master,start_it_old,4,
[{file,"application_master.erl"},{line,269}]}]
2014-07-02 20:38:41.060 [critical] <0.37.0>@gen_mod:start_module:83 ejabberd initialization was aborted because a module start failed.
2014-07-02 20:38:41.066 [error] <0.413.0> CRASH REPORT Process <0.413.0> with 0 neighbours crashed with reason: {eaddrnotavail,{6879,{192,168,1,125},tcp}} in ejabberd_listener:socket_error/6 line 539
我已对模块进行了更改,但使用了make来编译它们,并且不会抛出任何错误或警告。
答案 0 :(得分:1)
这是错误消息的核心:
{eaddrnotavail,{6879,{192,168,1,125},tcp}}
也就是说,ejabberd试图在端口6879上侦听地址192.168.1.125,但它不可用。这通常意味着其他一些进程已经在侦听此端口。您可以使用netstat -tnp | grep 6879
进行检查,或更改ejabberd配置以使用其他端口。
或者,这可能意味着IP地址不属于ejabberd正在运行的机器。
答案 1 :(得分:0)
通过禁用mod_proxy65模块来修复它。同事已启用它进行文件传输,但具有不同的i.p地址。