mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-24 16:23:40 +01:00
* doc/guide.tex: Updated
SVN Revision: 318
This commit is contained in:
parent
b8eadd4bf0
commit
46b5c0fdb9
141
doc/guide.html
141
doc/guide.html
@ -3,11 +3,11 @@
|
||||
<HTML>
|
||||
<HEAD><TITLE>Ejabberd Installation and Operation Guide</TITLE>
|
||||
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<META name="GENERATOR" content="hevea 1.07">
|
||||
<META http-equiv="Content-Type" content="text/html; charset=ISO8859-1">
|
||||
<META name="GENERATOR" content="hevea 1.06">
|
||||
</HEAD>
|
||||
<BODY >
|
||||
<!--HEVEA command line is: hevea guide.tex -->
|
||||
<!--HEVEA command line is: /usr/bin/hevea -charset ISO8859-1 guide.tex -->
|
||||
<!--HTMLHEAD-->
|
||||
<!--ENDHTML-->
|
||||
<!--PREFIX <ARG ></ARG>-->
|
||||
@ -34,6 +34,80 @@
|
||||
|
||||
<H2>Table of Contents</H2><!--SEC END -->
|
||||
|
||||
<UL><LI>
|
||||
<A HREF="#htoc1">1 Introduction</A>
|
||||
<LI><A HREF="#htoc2">2 Installation from Source</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc3">2.1 Installation Requirements</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc4">2.1.1 Unix</A>
|
||||
<LI><A HREF="#htoc5">2.1.2 Windows</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc6">2.2 Obtaining</A>
|
||||
<LI><A HREF="#htoc7">2.3 Compilation</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc8">2.3.1 Unix</A>
|
||||
<LI><A HREF="#htoc9">2.3.2 Windows</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc10">2.4 Starting</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc11">3 Configuration</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc12">3.1 Initial Configuration</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc13">3.1.1 Host Names</A>
|
||||
<LI><A HREF="#htoc14">3.1.2 Default Language</A>
|
||||
<LI><A HREF="#htoc15">3.1.3 Access Rules</A>
|
||||
<LI><A HREF="#htoc16">3.1.4 Shapers Configuration</A>
|
||||
<LI><A HREF="#htoc17">3.1.5 Listened Sockets</A>
|
||||
<LI><A HREF="#htoc18">3.1.6 Modules</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc19">3.2 Online Configuration and Monitoring</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc20">3.2.1 Web-based Administration Interface</A>
|
||||
<LI><A HREF="#htoc21">3.2.2 <TT>ejabberdctl</TT> tool</A>
|
||||
</UL>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc22">4 Clustering</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc23">4.1 How it works</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc24">4.1.1 Router</A>
|
||||
<LI><A HREF="#htoc25">4.1.2 Local Router</A>
|
||||
<LI><A HREF="#htoc26">4.1.3 Session Manager</A>
|
||||
<LI><A HREF="#htoc27">4.1.4 S2S Manager</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc28">4.2 How to setup ejabberd cluster</A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc29">A Built-in Modules</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc30">A.1 Common Options</A>
|
||||
<UL><LI>
|
||||
<A HREF="#htoc31">A.1.1 <TT>iqdisc</TT></A>
|
||||
<LI><A HREF="#htoc32">A.1.2 <TT>host</TT></A>
|
||||
<LI><A HREF="#htoc33">A.1.3 <TT>hosts</TT></A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc34">A.2 <TT>mod_announce</TT></A>
|
||||
<LI><A HREF="#htoc35">A.3 <TT>mod_configure</TT></A>
|
||||
<LI><A HREF="#htoc36">A.4 <TT>mod_disco</TT></A>
|
||||
<LI><A HREF="#htoc37">A.5 <TT>mod_echo</TT></A>
|
||||
<LI><A HREF="#htoc38">A.6 <TT>mod_irc</TT></A>
|
||||
<LI><A HREF="#htoc39">A.7 <TT>mod_last</TT></A>
|
||||
<LI><A HREF="#htoc40">A.8 <TT>mod_muc</TT></A>
|
||||
<LI><A HREF="#htoc41">A.9 <TT>mod_offline</TT></A>
|
||||
<LI><A HREF="#htoc42">A.10 <TT>mod_privacy</TT></A>
|
||||
<LI><A HREF="#htoc43">A.11 <TT>mod_private</TT></A>
|
||||
<LI><A HREF="#htoc44">A.12 <TT>mod_pubsub</TT></A>
|
||||
<LI><A HREF="#htoc45">A.13 <TT>mod_register</TT></A>
|
||||
<LI><A HREF="#htoc46">A.14 <TT>mod_roster</TT></A>
|
||||
<LI><A HREF="#htoc47">A.15 <TT>mod_service_log</TT></A>
|
||||
<LI><A HREF="#htoc48">A.16 <TT>mod_stats</TT></A>
|
||||
<LI><A HREF="#htoc49">A.17 <TT>mod_time</TT></A>
|
||||
<LI><A HREF="#htoc50">A.18 <TT>mod_vcard</TT></A>
|
||||
<LI><A HREF="#htoc51">A.19 <TT>mod_version</TT></A>
|
||||
</UL>
|
||||
<LI><A HREF="#htoc52">B I18n/L10n</A>
|
||||
</UL>
|
||||
|
||||
<!--TOC section Introduction-->
|
||||
|
||||
@ -121,14 +195,11 @@ MS Visual C++ 6.0 Compiler
|
||||
|
||||
<A NAME="sec:obtaining"></A>
|
||||
Stable <TT>ejabberd</TT> release can be obtained at
|
||||
<A HREF="http://www.jabberstudio.org/projects/ejabberd/releases/"><TT>http://www.jabberstudio.org/projects/ejabberd/releases/</TT></A>.<BR>
|
||||
<A HREF="http://www.process-one.net/en/projects/ejabberd/download.html"><TT>http://www.process-one.net/en/projects/ejabberd/download.html</TT></A>.<BR>
|
||||
<BR>
|
||||
The latest alpha version can be retrieved from CVS.
|
||||
The latest alpha version can be retrieved from Subversion repository.
|
||||
<PRE>
|
||||
export CVSROOT=:pserver:anonymous@jabberstudio.org:/home/cvs
|
||||
cvs login
|
||||
<press Enter when asked for a password>
|
||||
cvs -z3 co ejabberd
|
||||
svn co svn://svn.process-one.net/opt/data/svn/ejabberd/trunk ejabberd
|
||||
</PRE>
|
||||
<!--TOC subsection Compilation-->
|
||||
|
||||
@ -543,7 +614,7 @@ transports log and do XDB by themselves:
|
||||
Option <TT>modules</TT> defines the list of modules that will be loaded after
|
||||
<TT>ejabberd</TT> startup. Each list element is a tuple where first element is a
|
||||
name of a module and second is list of options to this module. See
|
||||
section <A HREF="#sec:modules">??</A> for detailed information on each module.<BR>
|
||||
section <A HREF="#sec:modules">A</A> for detailed information on each module.<BR>
|
||||
<BR>
|
||||
Example:
|
||||
<PRE>
|
||||
@ -579,7 +650,7 @@ Example:
|
||||
<A NAME="sec:webadm"></A>
|
||||
To perform online reconfiguration of <TT>ejabberd</TT> you need to enable
|
||||
<TT>ejabberd_http</TT> listener with option <TT>web_admin</TT> (see
|
||||
section <A HREF="#sec:configlistened">3.1.58Listened Socketssubsubsection.3.1.5</A>). After that you can open URL
|
||||
section <A HREF="#sec:configlistened">3.1.5</A>). After that you can open URL
|
||||
<CODE>http://server:port/admin/</CODE> with you favorite web-browser and enter
|
||||
username and password of an <TT>ejabberd</TT> user with administrator rights. E. g.
|
||||
with such config:
|
||||
@ -594,7 +665,7 @@ with such config:
|
||||
]
|
||||
}.
|
||||
</PRE>you should enter URL <CODE>http://example.org:5280/admin/</CODE>. After
|
||||
authentication you should see something like in figure <A HREF="#fig:webadmmain">??</A>.
|
||||
authentication you should see something like in figure <A HREF="#fig:webadmmain">1</A>.
|
||||
<BLOCKQUOTE><DIV ALIGN=center><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV>
|
||||
|
||||
<IMG SRC="webadmmain.png">
|
||||
@ -904,7 +975,7 @@ Example:
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>ejabberd:config</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_disco</TT>-->
|
||||
|
||||
@ -917,7 +988,7 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>http://jabber.org/protocol/disco#items</TT> and
|
||||
<TT>http://jabber.org/protocol/disco#info</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
<DT><B><TT>extra_domains</TT></B><DD> List of domains that will be added to server
|
||||
items reply
|
||||
</DL>
|
||||
@ -943,9 +1014,9 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
|
||||
<B><TT>host</TT></B><DD> Defines hostname of the service
|
||||
(see <A HREF="#sec:modhostoption">A.1.216hostsubsubsection.A.1.2</A>).
|
||||
(see <A HREF="#sec:modhostoption">A.1.2</A>).
|
||||
<DT><B><TT>hosts</TT></B><DD> Defines hostnames of the service
|
||||
(see <A HREF="#sec:modhostsoption">??</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
(see <A HREF="#sec:modhostsoption">A.1.3</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
are not present, then prefix <TT>echo.</TT> is added to all <TT>ejabberd</TT> hostnames.
|
||||
|
||||
</DL>
|
||||
@ -960,9 +1031,9 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
|
||||
<B><TT>host</TT></B><DD> Defines hostname of the service
|
||||
(see <A HREF="#sec:modhostoption">A.1.216hostsubsubsection.A.1.2</A>).
|
||||
(see <A HREF="#sec:modhostoption">A.1.2</A>).
|
||||
<DT><B><TT>hosts</TT></B><DD> Defines hostnames of the service
|
||||
(see <A HREF="#sec:modhostsoption">??</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
(see <A HREF="#sec:modhostsoption">A.1.3</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
are not present, then prefix <TT>irc.</TT> is added to all <TT>ejabberd</TT> hostnames.
|
||||
|
||||
<DT><B><TT>access</TT></B><DD> Specifies who is allowed to use IRC transport (default value is <TT>all</TT>).
|
||||
@ -986,7 +1057,7 @@ This module adds support for <A HREF="http://www.jabber.org/jeps/jep-0012.html">
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:last</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_muc</TT>-->
|
||||
|
||||
@ -999,9 +1070,9 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
|
||||
<B><TT>host</TT></B><DD> Defines hostname of the service
|
||||
(see <A HREF="#sec:modhostoption">A.1.216hostsubsubsection.A.1.2</A>).
|
||||
(see <A HREF="#sec:modhostoption">A.1.2</A>).
|
||||
<DT><B><TT>hosts</TT></B><DD> Defines hostnames of the service
|
||||
(see <A HREF="#sec:modhostsoption">??</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
(see <A HREF="#sec:modhostsoption">A.1.3</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
are not present, then prefix <TT>conference.</TT> is added to all <TT>ejabberd</TT> hostnames.
|
||||
|
||||
<DT><B><TT>access</TT></B><DD> Specifies who is allowed to use MUC service (default value is <TT>all</TT>).
|
||||
@ -1045,7 +1116,7 @@ This module implements Privacy Rules as defined in XMPP IM
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:privacy</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_private</TT>-->
|
||||
|
||||
@ -1057,7 +1128,7 @@ This module adds support of <A HREF="http://www.jabber.org/jeps/jep-0049.html">J
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:private</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_pubsub</TT>-->
|
||||
|
||||
@ -1070,9 +1141,9 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
|
||||
<B><TT>host</TT></B><DD> Defines hostname of the service
|
||||
(see <A HREF="#sec:modhostoption">A.1.216hostsubsubsection.A.1.2</A>).
|
||||
(see <A HREF="#sec:modhostoption">A.1.2</A>).
|
||||
<DT><B><TT>hosts</TT></B><DD> Defines hostnames of the service
|
||||
(see <A HREF="#sec:modhostsoption">??</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
(see <A HREF="#sec:modhostsoption">A.1.3</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
are not present, then prefix <TT>pubsub.</TT> is added to all <TT>ejabberd</TT> hostnames.
|
||||
|
||||
<DT><B><TT>served_hosts</TT></B><DD> Specifies which hosts are served by the service.
|
||||
@ -1102,7 +1173,7 @@ If this rule returns ``deny'' on requested user name, then
|
||||
registration is not allowed for it. (default value is <TT>all</TT>, which means
|
||||
no restrictions).
|
||||
<DT><B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:register</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
Example:
|
||||
<PRE>
|
||||
@ -1131,7 +1202,7 @@ This module implements roster management.<BR>
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:roster</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_service_log</TT>-->
|
||||
|
||||
@ -1166,7 +1237,7 @@ This module adds support for <A HREF="http://www.jabber.org/jeps/jep-0039.html">
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>http://jabber.org/protocol/stats</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_time</TT>-->
|
||||
|
||||
@ -1178,7 +1249,7 @@ This module answers UTC time on <TT>jabber:iq:time</TT> queries.<BR>
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:time</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC subsection <TT>mod_vcard</TT>-->
|
||||
|
||||
@ -1192,13 +1263,13 @@ Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
|
||||
<B><TT>host</TT></B><DD> Defines hostname of the service
|
||||
(see <A HREF="#sec:modhostoption">A.1.216hostsubsubsection.A.1.2</A>).
|
||||
(see <A HREF="#sec:modhostoption">A.1.2</A>).
|
||||
<DT><B><TT>hosts</TT></B><DD> Defines hostnames of the service
|
||||
(see <A HREF="#sec:modhostsoption">??</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
(see <A HREF="#sec:modhostsoption">A.1.3</A>). If neither <TT>host</TT> nor <TT>hosts</TT>
|
||||
are not present, then prefix <TT>vjud.</TT> is added to all <TT>ejabberd</TT> hostnames.
|
||||
|
||||
<DT><B><TT>iqdisc</TT></B><DD> <TT>vcard-temp</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
<DT><B><TT>search</TT></B><DD> Specifies whether search is enabled (value is <TT>true</TT>, default) or
|
||||
disabled (value is <TT>false</TT>) by the service. If <TT>search</TT> is set to <TT>false</TT>,
|
||||
option <TT>host</TT> is ignored and service does not appear in Jabber Discovery items.
|
||||
@ -1232,7 +1303,7 @@ This module answers <TT>ejabberd</TT> version on <TT>jabber:iq:version</TT> quer
|
||||
Options:
|
||||
<DL COMPACT=compact><DT>
|
||||
<B><TT>iqdisc</TT></B><DD> <TT>jabber:iq:version</TT> IQ queries processing
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
discipline (see <A HREF="#sec:modiqdiscoption">A.1.1</A>).
|
||||
</DL>
|
||||
<!--TOC section I18n/L10n-->
|
||||
|
||||
@ -1240,7 +1311,7 @@ discipline (see <A HREF="#sec:modiqdiscoption">??</A>).
|
||||
|
||||
<A NAME="sec:i18nl10n"></A>
|
||||
All built-in modules support <TT>xml:lang</TT> attribute inside IQ queries.
|
||||
E. g. on figure <A HREF="#fig:discorus">??</A> showed the reply on the following query:
|
||||
E. g. on figure <A HREF="#fig:discorus">2</A> showed the reply on the following query:
|
||||
<PRE>
|
||||
<iq id='5'
|
||||
to='e.localhost'
|
||||
@ -1260,7 +1331,7 @@ E. g. on figure <A HREF="#fig:discorus">??</A> showed the reply on the
|
||||
<A NAME="fig:discorus"></A>
|
||||
<DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV></DIV></BLOCKQUOTE>
|
||||
Also web-interface supports <CODE>Accept-Language</CODE> HTTP header (see
|
||||
figure <A HREF="#fig:webadmmainru">??</A>, compare it with figure <A HREF="#fig:webadmmain">??</A>)
|
||||
figure <A HREF="#fig:webadmmainru">3</A>, compare it with figure <A HREF="#fig:webadmmain">1</A>)
|
||||
<BLOCKQUOTE><DIV ALIGN=center><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV>
|
||||
|
||||
<IMG SRC="webadmmainru.png">
|
||||
|
Loading…
Reference in New Issue
Block a user