Plesk, Caching und Redis

Mittlerweile ist es ja keine Seltenheit mehr auf caching Technologien zu setzten, um Last vom Server zu nehmen. Für PHP (>=5.5)  gibt es einige Möglichkeiten Caching zu betreiben. Jedoch muss man unterscheiden zwischen Byte- und Datacache:

Im Bytecache wird das geparste PHP script abgelegt, sodass nicht jedes mal neu geparst werden muss. Im Datacache hingegen liegen die tatsächlichen Daten, welche meistens aus Datenbanken geladen werden.

Für den Bytecache gibt es den OpCache von Zend, welcher seit 5.5 mit PHP automatisch mitgeliefert wird. Ich kenne auch keinen anderen weiteren Bytecache, sodass dieser zu bevorzugen ist.

Um Daten zu cachen gibt es u.a. APCu oder xCache als lokale Variante. Diese sind PHP Extensions und müssen seperat kompiliert werden.

Weiterlesen

Kurzmitteilung

Große Dateien mit nginx als Reverse Proxy

Wenn man z.B. in ownCloud große Dateien hochladen möchte, muss man natürlich die entsprechenden Optionen für PHP setzen, aber leider reicht das nicht.

Kurze Problembeschreibung: Ich möchte eine 250mb große Datei hochladen, aber der Upload schlägt kurz vor Ende fehl.

Die php.ini hat folgende Einstellungen:

  • memory_limit = 512M
  • post_max_size = 512M
  • upload_max_filesize = 512M
  • output_buffering = 512

Da Plesk nginx als Reverse Proxy nutzt, sollte auch noch die

client_max_body_size 512m;

angepasst werden.

Die letzte benötigte Einstellung ist in der Apachekonfiguration zu finden genauer gesagt in der Konfiguration von mod_fcgid (FastCGI)  (/usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php)

FcgidMaxRequestLen 536870912

Danach sollte der Upload problemlos funktionieren.

PHP 5.5.8 mit MariaDB kompilieren

Seit Version 11.5 unterstützt das Plesk Panel ja bekanntlich mehrere PHP Versionen. Größtenteils folge ich dabei der Anleitung aus dem Administrator Guide.

Nachdem man sich PHP mithilfe von wget runtergeladen hat muss man es i.d.R. noch umbennen:

mv mirror php-558.tar.gz

Anschließend muss kann dann mit folgenden Befehlen das Archiv entpackt werden.

gunzip php-558.tar.gz
tar -xf php558.tar

Dann in das Verzeichnis wechseln und ./configure aufrufen, aber darauf achten, dass ein Präfix gegeben ist, da sonst die Standardversion überschrieben wird. Weiterlesen