有關Ejabberd mod_archive所有網上的教程是不完整的或非常caotics。或者也許是老的。所以我的問題是我使用Ubuntu 12.04服務器LTS與Mysql。我做了所有博客中解釋的事情。
所以安裝mod_archive我需要這樣做:
典型:
svn co https://svn.process-one.net/ejabberd-modules
cd ejabberd-modules/mod_archive/trunk
./build.sh
cp ebin/*modules in EJABBERD
和配置/etc/ejabberd.cfg
但這種方法EJABBERD不起作用。
所以我發現我們需要編譯其他MODULE,這些MODULE在任何站點都沒有解釋。該模塊被稱爲CONN_MYSQL
而我們可以在相同的ejabber模塊下載。因此,在SVN(https://svn.process-one.net/ejabberd-modules)有
cd ejabberd-modules/mysql/trunk
./build.sh
cp ebin/*modules in EJABBERD
和工作.....
我需要很多的時間去發現這一點。
我不能ejabberd.cfg使用這行配置:{odbc_server, "DSN=ejabberd;UID=ejabberd;PWD=ejabberd"}
因爲aplication崩潰,這樣說:
=ERROR REPORT==== 2012-11-28 18:01:08 ===
E(<0.437.0>:mod_archive_odbc:867) : should_store_jid failed: {xmlelement,
"error",
[{"code","500"},
{"type",
"wait"}],
[{xmlelement,
"internal-server-error",
[{"xmlns",
"urn:ietf:params:xml:ns:xmpp-stanzas"}],
[]}]}
於是我就用這條線在ejabberd.cfg: {odbc_server,{mysql的,「服務器「,」數據庫「,」用戶名「,」密碼「}}。
這行到模塊的配置:
{mod_archive_odbc, [{database_type, "mysql"}, {default_auto_save, true}, {enforce_default_auto_save, true}]},
所以現在的作品!
如果我使用Emakefile
trunk
或branches/ejabberd-2.0.x
我不remmember。你可以嘗試一個,如果不行,你可以嘗試另一個。
啊!和remmember與
./configure --enable-odbc the ejabberd source code.
編譯您可以在
wget http://www.process-one.net/en/ejabberd/ejabberd/2.1.11/ejabberd-2.1.11.tgz
得到這也許是必要的這個包:
apt-get install iodbc libmyodbc
嗨,如果我跑./bulid.sh得到錯誤:〜/ejabberd-modules/mod_archive/trunk $ ./build.sh {「init終止於do_boot」,{undef,[{make,all,[]},{init,start_it,1},{init,start_em,1 }]}}。請幫忙 Cras h dump被寫入:erl_crash.dump init終止於do_boot() – Karthik 2014-01-08 09:29:43
@JamesVo您錯過了erlang工具的debian軟件包。 – beshkenadze 2014-09-23 12:59:18