- 浏览: 32091 次
- 性别:
- 来自: 深圳
最新评论
文章列表
ejabberd dump日志查看方法
- 博客分类:
- Ejabberd
Ejabberd系统异常停止后,系统会留下一个 dump日志 :erl_crash_20120609-013614.dump
vi dump日志显然不是好办法,里面的数据太多太杂.
我们可以用erlang的一个webtool:start(). 方法启动erlang的一个web工具,来帮助分析dump日志
1.cmd 窗口中 敲入: webtool:start().
erlang 返回:
WebTool is available at http://localhost:8888/
Or http://127.0.0.1:8888/
...
php mcrypt 完全安装
- 博客分类:
- php
今天安装完 PHP ,访问某个功能时, /var/log/httpd/error_log 中报如下错误:
PHP Fatal error: Call to undefined function mcrypt_get_block_size() in /var/www/html/miniblog/system/classes/class_DES.php on line 40
心想必是 mcrypt没有安装
安装步骤如下:
1.查看当前 php 版本 #php -version
2.如果当前linux 中有php的源码包最好,如果没有源码包,需要去下载一个原码包 ...
mysql 安装报错
- 博客分类:
- mysql
今天安装Mysql 时报了一堆这样的错误,在网上找了一大堆资料把 lib补齐,还是不行.
最后悲剧滴发现我在32 位机器上装 64位的 mysql 安装包,真TMD悲剧啊,折腾了大半天,浪费我多少时间.特写此博
记念一下.
在装之前一定要检查一下机器的位数啊:
命令:getconf LONG_BIT
[root@localhost mysql]# rpm -ivh MySQL-client-5.5.17-1.rhel5.x86_64.rpmerror: Failed dependencies: libc.so.6()(64bit) is needed by M ...
新安装的 红帽 用 yum安装软件时报错
- 博客分类:
- Linux
其实红帽中已经安装了yum ,可能是没有注册,所以用yum注册时,会报错.解决办法如下:
1 .更改yum的源,即更换/etc/yum.repos.d/rhel-debuginfo.repo 这个文件。
2.进入/etc/yum.repos.d/目录,终端中输入wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo即可在此目录下得到CentOS-Base.repo文件,这是centos的源文件。
3.只需将其重命名为rhel-debuginfo.repo即可,以前的文件做个备份。
erlang 内存被大量占用,跟踪过程
- 博客分类:
- Ejabberd
第一步:查看进程数目是否正常? erlang:system_info(process_count).
第二步:查看节点的内存消耗在什么地方?> erlang:memory(). [{total,2099813400}, {processes,1985444264}, {processes_used,1985276128}, {system,114369136}, {atom,4479545}, {atom_used,4477777}, {binary,22756952}, {code,10486554}, {ets,47948808}]显示内存大部分消耗在进程上,由此确定是进程占 ...
在ejabberd 2.1.3版本中的ejabberd_c2s.erl中,有这么一段代码:
roster_change(IJID, ISubscription, StateData) -> LIJID = jlib:jid_tolower(IJID), IsFrom = (ISubscription == both) or (ISubscription == from), IsTo = (ISubscription == both) or (ISubscription == to), OldIsFrom = ?SETS:is_element(LIJ ...
可以使用Ejabberd中自带的库进行语言的国际化处理.
例如:translate:translate("zh", "Contactor add friend success.");
zh代表的是 EJABBERD_MSGS_PATH 路径下的 zh.msg
Contactor add friend success 代表是zh.msg中的一个键值.
还可以在同一目录下自建en.msg 等等,然后调用
translate:translate("en", "Contactor add friend success. ...
如果从客户端接收的数据中含有特殊字符,如 ', ; , \ 等特殊字符,则用 ejabberd_odbc:escape(Name),方法进行转义,
如果 Name = "姓名'",
使用ejabberd_odbc:escape(Name)转义过后,
SName = ejabberd_odbc:escape(Name),
SName的值为 "姓名\\'"
这时候再将SName插入数据库就不会报错了.这样也可以防止SQL注入.