Aktionen

Xcache mit Plesk und die xcache-Admin-Seite

Aus znilwiki

Die druckbare Version wird nicht mehr unterstützt und kann Darstellungsfehler aufweisen. Bitte aktualisiere deine Browser-Lesezeichen und verwende stattdessen die Standard-Druckfunktion des Browsers.
Warning.png
Warnung: Ja, wenn ihr diese Anleitung befolgt sieht alles fein aus ... aus xcache Sicht. Trotzdem wird der Cache ums verrecken nicht genutzt (obwohl sogar Mediawiki ihn erkennt). Da ist noch irgendetwas wegen Plesk was das verhindert. Ich nutze xcache inzwischen auch für meine ganzen Zabbix-Server - und da ist es eine ware Freude wie der Cache sich füllt




XCache funktioniert mit Plesk scheinbar nicht - aber APC Cache funktioniert ganz wunderbar - nehmt doch also diesen! Anleitung hier:




Nachdem Ihr xcache wie folgt installiert habt:

Einfach in einer Shell Sitzung per:

apt-get install php5-xcache

installieren. So wie die Meldungen sind ist es dann auch gleich aktiv. Ist es aber nicht. Bearbeitet noch die üblichen php.ini Dateien:

nano /etc/php5/apache2/php.ini
nano /etc/php5/cgi/php.ini
nano /etc/php5/cli/php.ini

und fügt ganz am Ende folgendes ein:

[xcache]
xcache.cacher = On
xcache.size = 64M
xcache.var_size = 64M

Dann startet den Apache Webserver kurz neu:

/etc/init.d/apache2 restart

oder

service apache2 restart



könnt Ihr danach euch auch noch die Xcache-Webseite einrichten - das war etwas knifflig denn ich habe es ums verderben nicht geschafft mich an der Seite dann anzumelden ...
Ihr braucht entweder eine Subdomain oder eine normale Domain in die es mit rein soll.
In den Ordner dieser Domain kopiert Ihr die xcache-Dateien:

cp -a /usr/share/xcache/htdocs/* /var/www/vhosts/h2321041.stratoserver.net/httpdocs/xcache

oder

cp -a /usr/share/xcache/htdocs/* /var/www/vhosts/h2321041.stratoserver.net/xcache.znil.net

Die Dateien müssen dem Plesk-Benutzer des Webspace gehören, also noch den Besitzer anpassen:

chown -R manfred:psaserv /var/www/vhosts/h2321041.stratoserver.net/xcache.znil.net/*

nun bearbeitet Ihr die xcache.ini:

nano /etc/php5/conf.d/xcache.ini

und fügt ans Ende nur diese eine folgende Zeile ein:

xcache.admin.enable_auth = Off

Vergesst das ganze von anderen Webseiten mit einem User und dem MD5 Passwort - hat bei mir nie geklappt.
Nun könnt Ihr im Webbrowser euch die Admin-Webseite zu xcache ansehen:

http://h2321041.stratoserver.net/xcache
http://xcache.znil.net
XCache-001.png



Tja ... aber das da nun jeder ran kann ist doch blöd?
ja ist es - aber wir sichern das einfach über die Plesk-Oberfläche ab!
Geht in Plesk ind ie Übersicht der Domänen Websites & Domains und klickt die Domäne an zu welcher der xcache Ordner gehört.
Dann geht dort auf Passwortgeschütze Verzeichnisse
Dort fügt Ihr erst das Verzeichnis hinzu

/xcache

wenn es in einem Unterorder liegt (Aufruf mit .../xcache) oder nur

/

wenn diese direkt im Hauptordner der Domäne liegen.
Wenn das Verzeichnis hinzugefügt ist, klickt es in der Liste unten an.
Im neuen Dialog könnt Ihr nun einen Benutzer hinzufügen. Und schon erscheint beim Aufruf der xcache-Webseite ein Abfrage nach Benutzername und Passwort - und die funktioniert auch!

Wenn wir nun die xcache Webseite öffnen und auf den Reiter Diagnosis gehen sehen wir nun noch folgende Fehlermeldung:

XCache-002.png
SAPI Compatibility     Error     PHP_FCGI_CHILDREN<1
PHP_FCGI_CHILDREN should be >= 1 and use 1 group of parent/childs model. See http://xcache.lighttpd.net/wiki/Faq

Bei Plesk können wir aber die Variable PHP_FCGI_CHILDREN nicht setzen. Das macht man normalerweise im cgi_warpper - und der ist bei Plesk eine kompilierte Datei, kein Script.
Man kann zwar die Variable trotzdem setzten - die binäre ausführbare Datei von Plesk ignoriert diese aber.
Die Lösung ist: Wir ersetzen die binäre Datei von Plesk durch ein klassisches cgi-wrapper Skript:

mv /var/www/cgi-bin/cgi_wrapper/cgi_wrapper /var/www/cgi-bin/cgi_wrapper/plesk-cgi_wrapper
touch /var/www/cgi-bin/cgi_wrapper/cgi_wrapper
chmod 755 /var/www/cgi-bin/cgi_wrapper/cgi_wrapper
nano /var/www/cgi-bin/cgi_wrapper/cgi_wrapper

und dann folgenden Inhalt in die Datei kopieren:

#!/bin/sh
export PHP_FCGI_CHILDREN=4
export PHP_FCGI_MAX_REQUESTS=1000
exec /usr/bin/php-cgi



--Bernhard Linz 21:38, 15. Jul. 2014 (CEST)


Loading comments...