这些天捣鼓了下ejabberd,准备研究它的代码,做为榜样~ 我这儿用的是1.1.3的代码,而svn上面的代码有些地方做了比较大的改动.
安装很简单
- ./configure
- make && make install
就ok了.
- ejabberd
会安装在var/lib/ejabberd目录
,
- 配置文件在
/etc/ejabberd
目录,默认是ejabberd.cfg,
日志放在
/var/log/ejabberd
目录下.
若现在像ejabberd的指南所说的那样执行
- erl -pa /var/lib/ejabberd/ebin -name ejabberd -s ejabberd
就会出错,没有定义配置文件的路径。最简单的方法就是先设置一个环境变量
- export EJABBERD_CONFIG_PATH=/etc/ejabberd/ejabberd.cfg
然后再执行刚才的erl命令,这儿节点名称用全称.
erl -pa /var/lib/ejabberd/ebin -name ejabberd@192.168.0.98 -s ejabberd
当然也可以用
- erl -pa /var/lib/ejabberd/ebin \
- -sname ejabberd \
- -s ejabberd \
- -ejabberd config \"/etc/ejabberd/ejabberd.cfg\" \
- log_path \"/var/log/ejabberd/ejabberd.log\" \
- -sasl sasl_error_logger \{file,\"/var/log/ejabberd/sasl.log\"\} \
- -mnesia dir \"/var/lib/ejabberd/spool\"
来详细地定义启动参数.
下面是ejabberdctl工具来注册一个用户admin.
ejabberdctl实际上是一个shell文件,具体内容是
- #!/bin/sh
-
- exec erl -noinput -sname ejabberdctl -s ejabberd_ctl -extra $@
可以看出,它实际上是调用ejabberd_ctl模块,对应的文件就是ejabberd_ctl.beam. 这工具原本在ejabberd源码下的tools文件夹下,但它找不到ejabberd_ctl.beam.你可以将它copy至
/var/lib/ejabberd/ebin下面方方便使用.
当你执行
- # ./ejabberdctl ejabberd@192.168.0.98 register admin 192.168.0.98 password
时它会出现如下错误
- RPC failed on the node 'ejabberd@192.168.0.98': nodedown
-
- =ERROR REPORT==== 6-Jul-2007::05:27:33 ===
- ** System NOT running to use fully qualified hostnames **
- ** Hostname 192.168.0.98 is illegal **
开始以为是192.168.0.98非法,后面用它的源码检查了一番发现是rpc:call调用有问题。因为ejabberctl这个shell文件中定义了
调用sname定义的短节点名与长节点名,两者所定义的结点不能通信.连net_adm:ping都失败.
我这儿把./ejabberdctl改成下面的样子:
- 1. #!/bin/sh
- 2.
- 3. exec erl -noinput -name ejabberdctl@192.168.0.98 -s ejabberd_ctl -extra $@
这样rpc:call就没有问题了.但再执行那个注册命令就会出现:
Can't register user "admin@192.168.0.98" at node 'ejabberd@192.168.0.98': not_allowed
检查源码发现是由于配置文件ejabberd.cfg中没有此host. 我这儿98加到hosts里面就可以了:
- % Host name:
- {hosts, ["localhost","192.168.0.98"]}.
再执行一下,就没问题了。admin用户已经注册成功!
接下来,就是登陆管理页面了. 我这儿默认是在 http://192.168.0.98:5280/admin
换台有浏览器的机器登陆这个页面. 这时admin登录总是出现401错误。我将源代码web/ejabberd_web.erl代码中的密码验证难取消了,就可以看到管理页面啦. 有空再研究一下到底是哪儿出了错,查了下代码,可能又是配置方面 :)
分享到:
相关推荐
nodejs010-nodejs-cryptiles-0.2.2-1.el6.centos.alt.noarch.rpm
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
基于麻雀搜索算法优化的深度置信网络(SSA-DBN)参数调整与数据分类预测——以隐藏层节点、迭代次数和学习率为优化目标的MATLAB实现,基于麻雀搜索算法优化深度置信网络(SSA-DBN)的数据分类预测 优化参数为隐藏层节点、迭代次数和学习率 利用交叉验证抑制过拟合问题 matlab代码, ,SSA-DBN; 参数优化; 隐藏层节点; 迭代次数; 学习率; 交叉验证; 过拟合抑制; MATLAB代码,基于SSA-DBN优化的数据分类预测方法:参数优化与过拟合抑制
BeTheme第一次发布于2014年5月21日,自那时以来,已有数以百万计的人下载了BeTheme,其评分为4.8。这个主题是WooCommerce支持的,在此帮助下,您可以制作一个电子商务网站,还可以制作博客、新闻和其他类型的网站。BeTheme 21.5.6 wordpress主题模板特点:放大器支撑多用途主题500+预制件演示单击演示安装移动友好型主题联络表格7支持自转滑块。
基于S7-200智能控制与组态王4x3界面的书架式堆垛立体车库系统设计与应用,基于S7-200和组态王4x3书架式堆垛式立体库立体车库 ,S7-200; 组态王4x3; 书架式堆垛式立体库; 立体车库,基于S7-200与组态王4x3的立体车库系统
1、文件内容:pykde4-akonadi-4.10.5-6.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/pykde4-akonadi-4.10.5-6.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
基于28379D的异步电机无速度传感器控制:MD500与MD500E滑模同步调制代码研究,各种代码md500代码,异步电机,基于28379D,带无速度传感器控制,参数辨识,同步调制等功能。 还有md500e代码,滑模无感代码,逆变整流代码 ,核心关键词:md500代码; 异步电机; 28379D; 无速度传感器控制; 参数辨识; 同步调制; md500e代码; 滑模无感控制; 逆变整流代码。,基于28379D的MD500电机异步控制系统与参数辨识软件
"可再生能源驱动的热电联供微网经济运行优化研究:基于具体文献的程序复现与MATLAB粒子群算法应用",含可再生能源的热电联供型微网经济运行优化 有具体文献 程序复现 MATLAB粒子群算法 ,核心关键词: 可再生能源; 热电联供型微网; 经济运行优化; 具体文献; 程序复现; MATLAB粒子群算法。,含可再能源热电联供型微网运行优化策略复现于特定文献中的MATLAB模型研究。
1、文件内容:pyserial-2.6-6.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/pyserial-2.6-6.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
finishBitmap.jpg
"英博尔控制器调速软件全面升级,引领行业新风尚",英博尔控制器调速软件全新 ,英博尔; 控制器; 调速软件; 全新,英博尔控制器调速软件全新升级
电机定子模态频率计算方法及公式在Excel表格中的应用,电机定子模态频率计算公式,公式法,exl表格 ,电机定子模态频率计算公式; 公式法; EXL表格,电机定子模态频率计算方法及公式法在Excel表格中的应用
一、项目简介 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 二、技术实现 jdk版本:1.8 及以上 ide工具:IDEA或者eclipse 数据库: mysql5.5及以上 后端:spring+springboot+mybatis+maven+mysql 前端: vue , css,js , elementui 三、系统功能 1、系统角色主要包括:管理员、用户 2、系统功能 主要功能包括: 用户登录注册 首页 个人中心 修改密码 个人信息 用户管理 管理员管理 问卷管理 题目管理 题目统计 问卷调查管理 新闻资讯管理 轮播图管理 问卷调查 新闻资讯 个人中心 问卷调查记录 后台管理 详见 https://flypeppa.blog.csdn.net/article/details/143189415
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
1、文件内容:pulseaudio-esound-compat-10.0-6.el7_9.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/pulseaudio-esound-compat-10.0-6.el7_9.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
免费JAVA毕业设计 2024成品源码+论文+数据库+启动教程 启动教程:https://www.bilibili.com/video/BV1SzbFe7EGZ 项目讲解视频:https://www.bilibili.com/video/BV1Tb421n72S 二次开发教程:https://www.bilibili.com/video/BV18i421i7Dx
一种基于Lifelogging视频的文本标签生成模型.pdf
MATLAB仿真:MIMO系统FLMS算法的优化与实现,一个mimo系统的flms算法的MATLAB仿真 ,Mimo系统; FLMS算法; MATLAB仿真,"MIMO系统FLMS算法MATLAB仿真"
"基于S7-200 PLC的组态王燃油锅炉控制系统:详解梯形图接线原理、IO分配及组态画面图解",基于S7-200 PLC和组态王燃油锅炉控制系统 带解释的梯形图接线图原理图图纸,io分配,组态画面 ,S7-200 PLC; 组态王燃油锅炉控制; 梯形图接线图原理图; IO分配; 组态画面,基于S7-200 PLC的燃油锅炉控制系统原理图及IO分配解析
方便暖通工程师及板换用户了解艾普尔板式换热器选型计算,免费使用。