Historie eingefügt
[kivitendo-erp.git] / doc / INSTALL
1 Aktuelle Installations- und Konfigurationshinweise: 
2 ===================================================
3
4 gibt es:
5
6 -auf der Lx-Office Homepage unter
7 http://lx-office.org/index.php?id=dokumentation
8 -im Lx-Office-Wiki unter Dokumentation
9 http://wiki.lx-office.org/index.php/Lx-Office_ERP
10 -im Lx-Office-Forum:
11 http://www.lx-office.org/forum/
12
13 =======================================
14
15 Lx-Office ERP
16 Installationsanleitung
17
18
19 Folgende Pakete müssen installiert sein:
20 ========================================
21 Webserver (Apache)
22 PostgreSQL - Datenbank 
23
24 Benötigte Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation
25 sind:
26
27 * DBI
28 * DBD::Pg
29 * HTML::Template
30 * CGI::Ajax
31 * Class::Accessor
32 * Archive::Zip
33 * Text::Iconv
34 * YAML
35
36 Diese Pakete können bei den unterschiedlichen Distributionen anders heißen. 
37 (Debian: apache, postgresql, libdbi-perl, libdbd-pg-perl,  libpgperl, libhtml-template-perl, libclass-accessor-perl, libarchive-zip-perl, libtext-iconv-perl, libyaml-perl)
38 (Fedora: httpd, postgresql-server, perl-DBI, perl-DBD-Pg) 
39 (SuSE: apache2, postgresql-server,  perl-DBI, perl-DBD-Pg)
40
41
42 Da Perl-CGI-Ajax nicht als Paket für Distributionen bereit steht, muß es mit der CPAN-Shell installiert werden.
43 Leider ist dazu nicht jeder in der Lage. LxO liefert daher das Paket im CGI-Verzeichnis mit. Das sollte als Fall-Back greifen.
44
45
46 Die PostgreSQL Konfiguration muß angepasst werden.
47 ==================================================
48 In der Datei postgresql.conf (/var/lib/pgsql/data/ oder /etc/postgresql/) muß folgender Wert verändert werden:
49
50 TCPIP_SOCKET = 1 #  Nur PostgreSQL < 8.0
51
52 default_with_oids = on # Nur PostgreSQL >= 8.0
53
54
55 In der Datei pg_hba.conf (/var/lib/pgsql/data/ oder /etc/postgresql/) müssen die Berichtigungen für den 
56 Zugriff geändert werden:
57
58 alte Eintragung: 
59 ----------------
60 local   all all ident sameuser
61 host all all 127.0.0.1 255.0.0.0        ident sameuser
62
63 Änderung: 
64 ---------
65 local   all all trust
66 host all all 127.0.0.1 255.0.0.0        trust
67
68 Besser:
69 -------
70 local   all         lxoffice                                           password
71 host    all         lxoffice      127.0.0.1         255.255.255.255    password
72
73
74 Installation des Programmpaketes 
75 ================================
76 Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.4.x.tgz) in den DocumentRoot des Webservers
77 (/var/www/html/ oder /srv/www/htdocs oder /var/www/) entpacken.
78
79 tar xvzf lxoffice-erp-2.4.x.tgz
80
81 Verändern Sie evtl. noch den Namen des Verzeichnisses
82
83 mv lxoffice-erp/ lx-erp/
84
85 oder noch besser, Sie verwenden einen Alias in der Webserverkonfiguration.
86
87 Das Verzeichnis muß dem Webserverbenutzer (Debian: www-data, Fedora: apache, SuSE: wwwrun) übergeben werden:
88
89 chown apache: -R lx-office-erp/
90
91
92 Datenbankbenutzer anlegen
93 =========================
94
95 Es sollte zum Zugriff auf die PostgreSQL Datenbank ein Datenbankbenutzer angelegt werden. Führen Sie dazu 
96 folgende Befehle nacheinander aus.
97
98 su - postgres
99 createuser -d lxoffice (ohne Passwort) 
100 oder besser
101 createuser -d -P lxoffice (mit Passwort)
102
103 Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie den evtl. voreingestellten Benutzer 
104 "postgres" auf "lxoffice".
105
106
107 PostgreSQL - Datenbank erweitern 
108 ================================
109 In der Datenbank "template1" sollte bevor die restliche Konfiguration von LxOffice ERP erfolgt noch folgende
110 Funktion hinzugefügt werden:
111
112 su postgres
113 psql template1  (Zugriff über Admintool auf die Datenbank)
114 create function plpgsql_call_handler ()
115 returns opaque
116 as '/usr/lib/pgsql/plpgsql.so'  
117 language 'c';
118
119 create language 'plpgsql' handler plpgsql_call_handler
120 lancompiler 'pl/pgsql';
121
122 !!!! Bitte beachten Sie, das der Pfad zur Datei plpgsql.so und der Name von Distribution zu Distribution verschieden sein kann.
123 Bei z.B. Debian befindet sie sich unter '/usr/lib/postgresql/lib/plpgsql.so'.
124
125
126 Apache Konfiguration 
127 ====================
128 Der Zugriff auf das Programmverzeichnis muß in der Apache Webserver- konfiguration httpd.conf 
129 (/etc/httpd/conf/) [bei SuSE evtl. httpd2.conf] konfiguriert werden:
130
131 AddHandler cgi-script .pl
132 Alias /lx-erp/ /var/www/lx-erp/
133 <Directory /var/www/lx-erp>
134   Options ExecCGI Includes FollowSymlinks
135   DirectoryIndex login.pl                       # nicht mehr unbedingt nötig, da eine index.html mitgeliefert wird
136 </Directory>
137
138 <Directory /var/www/lx-erp/users>
139   Order Deny,Allow
140   Deny from All
141 </Directory>
142
143 !!!Vor den einzelnen Optionen muß bei einigen Distributionen ein Plus "+" gesetzt werden.
144
145 Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets nicht ausgeliefert. Daher die Apache-Konfig um diese Zeile erweitern:
146
147 EnableSendfile Off
148
149 Datenbank anlegen 
150 =================
151 Das Administrationsmenü finden Sie unter: 
152
153 http://localhost/lx-erp/admin.pl
154
155 Zuerst muß eine Datenbank angelegt werden. Anschließend ein Benutzer. Verwenden Sie für den 
156 Datenbankzugriff den eben angelegten Benutzer lxoffice. 
157
158
159 OpenDocument-Vorlagen
160 =====================
161 Lx-Office unterstützt die Verwendung von Vorlagen im
162 OpenDocument-Format, wie es OpenOffice.org ab Version 2
163 erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
164 auch aus diesen direkt PDF-Dateien erzeugen.  Um die Unterstützung von
165 OpenDocument-Vorlagen zu aktivieren muss in der Datei "lx-erp.conf"
166 die Variable "$opendocument_templates" auf "1" stehen.  Dieses ist die
167 Standardeinstellung.
168
169 Weiterhin muss in der Datei "lx-erp.conf" die Variable "$dbcharset"
170 auf die Zeichenkodierung gesetzt werden, die auch bei der Speicherung
171 der Daten in der Datenbank verwendet wird. Diese ist in den meisten
172 Fällen "ISO-8859-15".
173
174 Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
175 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
176 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
177 neben OpenOffice.org ab Version 2 auch der "X virtual frame buffer"
178 (xvfb) installiert werden.  Bei Debian ist er im Paket "xvfb"
179 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
180
181 Nach der Installation müssen in der Datei "lx-erp.conf" zwei weitere
182 Variablen angepasst werden: "$openofficeorg_writer_bin" muss den
183 vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
184 "$xvfb_bin" muss den Pfad zum "X virtual frame buffer" enthalten.
185
186 Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
187 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
188 die Variable "$openofficeorg_daemon" gesetzt ist, startet ein
189 OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
190 bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
191 benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
192 reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
193 werden muss. Der Nachteil ist, dass diese Methode Python und die
194 Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
195
196 Ist "$openofficeorg_daemon" nicht gesetzt, so wird für jedes Dokument
197 OpenOffice neu gestartet und die Konvertierung mit Hilfe eines Makros
198 durchgeführt. Dieses Makro muss in der Dokumentenvorlage enthalten
199 sein und "Standard.Conversion.ConvertSelfToPDF()" heißen. Die
200 Beispielvorlage templates/German-invoice.odt enthält ein solches
201 Makro, das in jeder anderen Dokumentenvorlage ebenfalls enthalten sein
202 muss.
203
204 Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
205 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
206 Debian ist dies momentan "~/.openoffice.org2". Sollte der Name bei
207 Ihrer OpenOffice.org-Installation anders sein, so muss das Verzeichnis
208 "users/.openoffice.org2" entsprechend umbenannt werden. Ist der Name
209 z.B. einfach nur ".openoffice", so wäre folgender Befehl auszuführen:
210
211 mv users/.openoffice.org2 users/.openoffice
212
213 Dieses Verzeichnis, wie auch das komplette "users"-Verzeichnis, muss
214 vom Webserver beschreibbar sein. Dieses wurde in Schritt "Installation
215 des Programmpakets" oben bereits erledigt, kann aber erneut überprüft
216 werden, wenn die Konvertierung nach PDF fehlschlägt.
217
218
219 Lx-Office ERP verwenden 
220 =======================
221 Einloggen können Sie sich unter: 
222
223 http://localhost/lx-office-erp/login.pl