X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=doc%2Fhtml%2Fch02s05.html;h=b519bd57a157270fbac6481d95166baffa80a5a4;hb=2c6997eca202daacb743c80d1d65c6faed61ad35;hp=e7afbea09f7cee6fa6d02f2d46769c7562b9bb39;hpb=3adb0cb772af4bcdbd867b5688b3e02356a2e613;p=kivitendo-erp.git diff --git a/doc/html/ch02s05.html b/doc/html/ch02s05.html index e7afbea09..b519bd57a 100644 --- a/doc/html/ch02s05.html +++ b/doc/html/ch02s05.html @@ -1,10 +1,10 @@ - - 2.5. Webserver-Konfiguration

2.5. Webserver-Konfiguration

2.5.1. Grundkonfiguration mittels CGI

[Anmerkung]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 + + 2.5. Webserver-Konfiguration

2.5. Webserver-Konfiguration

2.5.1. Grundkonfiguration mittels CGI

[Anmerkung]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 + 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/
@@ -19,40 +19,40 @@ Alias /lx-erp/ /var/www/lx-erp/
  Deny from All
 </Directory>

Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das Lx-Office-Archiv entpacket haben.

[Anmerkung]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/FCGI

2.5.2.1. Was ist FastCGI?

Direkt aus Wikipedia + 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/FCGI

2.5.2.1. Was ist FastCGI?

Direkt aus Wikipedia kopiert:

- [ FastCGI ist ein Standard für die Einbindung + [ FastCGI ist ein Standard für die Einbindung externer Software zur Generierung dynamischer Webseiten in einem Webserver. FastCGI ist vergleichbar zum Common Gateway Interface (CGI), wurde jedoch entwickelt, um dessen Performance-Probleme zu umgehen. ]

2.5.2.2. Warum FastCGI?

Perl Programme (wie Lx-Office 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 + ü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 - 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 - deutlich länger dauert als früher, und dass davon 90% für das Laden + müssen, ist die Funktionalität von Lx-Office 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 + 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 Plugin

Folgende Kombinationen sind getestet:

  • Apache 2.2.11 (Ubuntu) und mod_fcgid.

  • Apache 2.2.11 (Ubuntu) und mod_fastcgi.

Dabei wird mod_fcgid empfohlen, weil mod_fastcgi seit geraumer + wird nur die eigentliche Programmlogik ausgeführt.

2.5.2.3. Getestete Kombinationen aus Webservern und Plugin

Folgende Kombinationen sind getestet:

  • Apache 2.2.11 (Ubuntu) und mod_fcgid.

  • Apache 2.2.11 (Ubuntu) und mod_fastcgi.

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]Warnung

FCGI 0.69 und höher ist extrem strict in der Behandlung von + verwendet.

[Warnung]Warnung

FCGI 0.69 und höher ist extrem strict in der Behandlung von Unicode, und verweigert bestimmte Eingaben von Lx-Office. 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 + 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 Webservers

Bevor Sie versuchen, eine Lx-Office 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 + 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 Lx-Office mit FastCGI erfolgt durch Anpassung der vorhandenen Alias- und Directory-Direktiven. Dabei wird zwischen dem Installationspfad von Lx-Office im Dateisystem @@ -72,8 +72,8 @@ Alias /url/for/lx-office-erp/ /path/to/lx-office-erp/ <DirectoryMatch /path/to/lx-office-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 +</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/
@@ -91,10 +91,10 @@ FcgidMaxRequestLen 10485760
   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 - CGI und FastCGI zu betreiben. Dafür bleiben die Directorydirektiven - wie oben beschrieben, die URLs werden aber umgeleitet:

# Zugriff über CGI
+          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 + 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
 
 # Zugriff mit mod_fcgid:
@@ -102,4 +102,4 @@ AliasMatch ^/url/for/lx-office-erp-fcgid/[^/]+\.pl /path/to/lx-office-erp/dispat
 Alias       /url/for/lx-office-erp-fcgid/          /path/to/lx-office-erp/

Dann ist unter /url/for/lx-office-erp/ die normale Version erreichbar, und unter /url/for/lx-office-erp-fcgid/ die - FastCGI-Version.

\ No newline at end of file + FastCGI-Version.

\ No newline at end of file