2.5.1. Grundkonfiguration mittels CGI
| Anmerkung |
---|
Für einen deutlichen Performanceschub sorgt die Ausführung
mittels FastCGI/FCGI. Die Einrichtung wird ausführlich im Abschnitt
Konfiguration für FastCGI/FCGI beschrieben. |
Der Zugriff auf das Programmverzeichnis muss in der Apache
Webserverkonfigurationsdatei httpd.conf
eingestellt
werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
anderen Datei hinzu, die beim Starten des Webservers eingelesen
wird:
AddHandler cgi-script .pl
-Alias /lx-erp/ /var/www/lx-erp/
+Alias /kivitendo-erp/ /var/www/kiviteno-erp/
-<Directory /var/www/lx-erp>
- Options ExecCGI
- Includes FollowSymlinks
+<Directory /var/www/kivitendo-erp>
+ Options ExecCGI Includes FollowSymlinks
</Directory>
-<Directory /var/www/lx-erp/users>
+<Directory /var/www/kivitendo-erp/users>
Order Deny,Allow
Deny from All
</Directory>
Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher
- das Lx-Office-Archiv entpacket haben.
| Anmerkung |
---|
Vor den einzelnen Optionen muss bei einigen Distributionen ein
+ das kivitendo-Archiv entpacket haben. | Anmerkung |
---|
Vor den einzelnen Optionen muss bei einigen Distributionen ein
Plus â+ â gesetzt werden. |
Auf einigen Webservern werden manchmal die Grafiken und
Style-Sheets nicht ausgeliefert. In solchen Fällen hat es oft
geholfen, die folgende Option in die Konfiguration aufzunehmen: EnableSendfile Off 2.5.2. Konfiguration für FastCGI/FCGI2.5.2.1. Was ist FastCGI?Direkt aus Wikipedia
@@ -28,78 +27,78 @@ Alias /lx-erp/ /var/www/lx-erp/
Webserver. FastCGI ist vergleichbar zum Common Gateway Interface
(CGI), wurde jedoch entwickelt, um dessen Performance-Probleme zu
umgehen. ]
- Perl Programme (wie Lx-Office eines ist) werden nicht statisch
+ Perl Programme (wie kivitendo eines ist) werden nicht statisch
kompiliert. Stattdessen werden die Quelldateien bei jedem Start
übersetzt, was bei kurzen Laufzeiten einen GroÃteil der Laufzeit
ausmacht. Während SQL Ledger einen GroÃteil der Funktionalität in
einzelne Module kapselt, um immer nur einen kleinen Teil laden zu
- müssen, ist die Funktionalität von Lx-Office soweit gewachsen, dass
+ müssen, ist die Funktionalität von kivitendo soweit gewachsen, dass
immer mehr Module auf den Rest des Programms zugreifen. Zusätzlich
benutzen wir umfangreiche Bibliotheken um Funktionaltät nicht selber
entwickeln zu müssen, die zusätzliche Ladezeit kosten. All dies
- führt dazu dass ein Lx-Office Aufruf der Kernmasken mittlerweile
+ führt dazu dass ein kivitendo Aufruf der Kernmasken mittlerweile
deutlich länger dauert als früher, und dass davon 90% für das Laden
der Module verwendet wird. Mit FastCGI werden nun die Module einmal geladen, und danach
wird nur die eigentliche Programmlogik ausgeführt. 2.5.2.3. Getestete Kombinationen aus Webservern und PluginFolgende Kombinationen sind getestet: Dabei wird mod_fcgid empfohlen, weil mod_fastcgi seit geraumer
Zeit nicht mehr weiter entwickelt wird. Im Folgenden wird auf
mod_fastcgi nicht mehr explizit eingegangen. Als Perl Backend wird das Modul FCGI.pm
verwendet. | Warnung |
---|
FCGI 0.69 und höher ist extrem strict in der Behandlung von
- Unicode, und verweigert bestimmte Eingaben von Lx-Office. Falls es
+ Unicode, und verweigert bestimmte Eingaben von kivitendo. Falls es
Probleme mit Umlauten in Ihrere Installation gibt, muss auf die
Vorgängerversion FCGI 0.68 ausgewichen werden. Mit CPAN lässt sie sich die Vorgängerversion wie folgt
- installieren: force install M/MS/MSTROUT/FCGI-0.68.tar.gz |
2.5.2.4. Konfiguration des WebserversBevor Sie versuchen, eine Lx-Office Installation unter FCGI
+ installieren: force install M/MS/MSTROUT/FCGI-0.68.tar.gz |
2.5.2.4. Konfiguration des Webservers
Bevor Sie versuchen, eine kivitendo Installation unter FCGI
laufen zu lassen, empfliehlt es sich die Installation ersteinmal
unter CGI aufzusetzen. FCGI macht es nicht einfach Fehler zu
debuggen die beim ersten aufsetzen auftreten können. Sollte die
Installation schon funktionieren, lesen Sie weiter.
Zuerst muss das FastCGI-Modul aktiviert werden. Dies kann
- unter Debian/Ubuntu z.B. mit folgendem Befehl geschehen:
a2enmod fcgid
Die Konfiguration für die Verwendung von Lx-Office mit FastCGI
+ unter Debian/Ubuntu z.B. mit folgendem Befehl geschehen:
a2enmod fcgid
Die Konfiguration für die Verwendung von kivitendo mit FastCGI
erfolgt durch Anpassung der vorhandenen Alias
-
und Directory
-Direktiven. Dabei wird zwischen
- dem Installationspfad von Lx-Office im Dateisystem
- ("/path/to/lx-office-erp
") und der URL
- unterschieden, unter der Lx-Office im Webbrowser erreichbar ist
- ("/url/for/lx-office-erp
").
Folgender Konfigurationsschnipsel funktioniert mit
- mod_fastcgi:
AliasMatch ^/url/for/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fcgi
-Alias /url/for/lx-office-erp/ /path/to/lx-office-erp/
+ dem Installationspfad von kivitendo im Dateisystem
+ ("/path/to/kivitendo-erp
") und der URL
+ unterschieden, unter der kivitendo im Webbrowser erreichbar ist
+ ("/url/for/kivitendo-erp
").Folgender Konfigurationsschnipsel funktioniert mit
+ mod_fastcgi:
AliasMatch ^/url/for/kivitendo-erp/[^/]+\.pl /path/to/kivitendo-erp/dispatcher.fcgi
+Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/
-<Directory /path/to/lx-office-erp>
+<Directory /path/to/kivitendo-erp>
AllowOverride All
Options ExecCGI Includes FollowSymlinks
Order Allow,Deny
Allow from All
</Directory>
-<DirectoryMatch /path/to/lx-office-erp/users>
+<DirectoryMatch /path/to/kivitendo-erp/users>
Order Deny,Allow
Deny from All
</DirectoryMatch>
Seit mod_fcgid-Version 2.6.3 gelten sehr kleine Grenzen für
die maximale GröÃe eines Requests. Diese sollte wie folgt
hochgesetzt werden:
FcgidMaxRequestLen 10485760
Das ganze sollte dann so aussehen:
AddHandler fcgid-script .fpl
-AliasMatch ^/url/for/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
-Alias /url/for/lx-office-erp/ /path/to/lx-office-erp/
+AliasMatch ^/url/for/kivitendo-erp/[^/]+\.pl /path/to/kivitendo-erp/dispatcher.fpl
+Alias /url/for/kivitendo-erp/ /path/to/kivitendo-erp/
FcgidMaxRequestLen 10485760
-<Directory /path/to/lx-office-erp>
+<Directory /path/to/kivitendo-erp>
AllowOverride All
Options ExecCGI Includes FollowSymlinks
Order Allow,Deny
Allow from All
</Directory>
-<DirectoryMatch /path/to/lx-office-erp/users>
+<DirectoryMatch /path/to/kivitendo-erp/users>
Order Deny,Allow
Deny from All
</DirectoryMatch>
Hierdurch wird nur ein zentraler Dispatcher gestartet. Alle
Zugriffe auf die einzelnen Scripte werden auf diesen umgeleitet.
Dadurch, dass zur Laufzeit öfter mal Scripte neu geladen werden,
- gibt es hier kleine Performance-EinbuÃen.
Es ist möglich, die gleiche Lx-Office Version parallel unter
+ gibt es hier kleine Performance-EinbuÃen.
Es ist möglich, die gleiche kivitendo Version parallel unter
CGI und FastCGI zu betreiben. Dafür bleiben die Directorydirektiven
wie oben beschrieben, die URLs werden aber umgeleitet:
# Zugriff über CGI
-Alias /url/for/lx-office-erp /path/to/lx-office-erp
+Alias /url/for/kivitendo-erp /path/to/kivitendo-erp
# Zugriff mit mod_fcgid:
-AliasMatch ^/url/for/lx-office-erp-fcgid/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
-Alias /url/for/lx-office-erp-fcgid/ /path/to/lx-office-erp/
Dann ist unter /url/for/lx-office-erp/
+AliasMatch ^/url/for/kivitendo-erp-fcgid/[^/]+\.pl /path/to/kivitendo-erp/dispatcher.fpl
+Alias /url/for/kivitendo-erp-fcgid/ /path/to/kivitendo-erp/
Dann ist unter /url/for/kivitendo-erp/
die normale Version erreichbar, und unter
- /url/for/lx-office-erp-fcgid/
die
+ /url/for/kivitendo-erp-fcgid/
die
FastCGI-Version.