Antworten auf Ihre häufigsten Fragen

Welche Skriptanpassungen müssen für das Update auf Debian Jessie durchgeführt werden?
pdf print

In diesem Artikel fassen wir die wichtigsten Änderungen zusammen, die mit dem Plattformupdate auf Debian Jessie kommen werden.

Stand: 19.12.2016

Dieser Artikel wird von uns fortlaufend aktualisiert und erweitert.

Allgemeine Änderungen

Mit der Umstellung wird der Zeichensatz für alle Serverdienste auf UTF-8 gesetzt. Auch PHP verwendet ab der Version 5.6 UTF-8 als Standard Zeichensatz. Es kann daher dazu kommen, dass bei einigen Webseiten die Umlaute nicht mehr korrekt dargestellt werden. Dies kann mehrere Ursachen haben, auf die im Folgenden genauer eingegangen wird.

Umlaute aus HTML Dateien werden nicht mehr korrekt dargestellt

In diesem Fall liegen die HTML Dateien in einer anderen Codierung (z.B. ISO-8859-1) vor oder diese wird per META-Tag gesetzt.

Im Falle des META-Tags kann dieser einfach zum Beispiel wie folgt angepasst werden:

Vorher:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Nachher:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Liegen die Dateien selbst in einer anderen Codierung vor, so können Sie diese per FTP herunterladen und mit einem Texteditor (z.B. Notepad++) öffnen. Speichern Sie nun die Datei mit der Codierung "UTF-8 ohne BOM" ab und laden Sie diese anschließend wieder auf den Server hoch. Dies kann je nach Anzahl der Dateien ein nicht unerheblicher Aufwand sein, daher ist auch ein Ändern der Codierung des Webservers mit folgender Zeile in eine .htaccess Datei möglich:

AddDefaultCharset ISO-8859-1

Umlaute von PHP basierenden Seiten werden nicht mehr korrekt dargestellt

Hier liegen in den meisten Fällen die Daten aus der MySQL Datenbank - sofern eine verwendet wird - in einer anderen Codierung vor oder die PHP Dateien selbst sind z.B. ISO codiert. In diesem Fall können Sie im KIS unter dem folgenden Punkt die Standardcodierung von PHP ändern:

Produktverwaltung - Ihr Produktbereich - Konfigurieren - Skripte & Datenbanken - Skript-Einstellungen - Charset

Folgende Werte stehen zur Auswahl:

none

Setzt sowohl für PHP 5.5 und PHP 5.6 einen leeren Wert als default_charset. Dies spiegelt das Verhalten von PHP 5.5 und dessen Vorgängerversionen wieder.

Serverstandard

Belässt die Standardwerte von PHP (Keine Vorgabe für PHP 5.5 und UTF-8 für PHP 5.6)

ISO-8859-1

Setzt den Zeichensatz auf ISO-8859-1 für PHP 5.5 und PHP 5.6

Alternativ zum KIS kann der Wert auch per .htaccess Datei

php_value default_charset "ISO-8859-1"

oder aus dem PHP Skript direkt

ini_set('default_charset', 'ISO-8859-1');

gesetzt werden.

Skriptsprachen

Eine Übersicht über die zusätzlichen Module und Pakete für PHP, Perl, Python und Ruby finden Sie unter den folgenden Links:

PHP 5.5

http://php55.jessie.he-hosting.de/phpinfo.php
http://php55.jessie.he-hosting.de/softwareinfo.php

PHP 5.6

http://php56.jessie.he-hosting.de/phpinfo.php
http://php56.jessie.he-hosting.de/softwareinfo.php

Apache 2.4

Das Update von Apache 2.2 auf 2.4 bringt einige wichtige Änderungen im Bereich der .htaccess Verarbeitung mit sich, welche wir im Folgenden näher erläutern möchten. Eine vollständige Übersicht aller Änderungen zwischen Apache 2.2 und Apache 2.4 finden Sie unter dem folgendem Link: http://httpd.apache.org/docs/2.4/howto/auth.html

| Hinweis |
Um die Umstellung zu vereinfachen, haben wir für einen begrenzten Zeitraum ein Kompatibilitätsmodul aktivert, durch welches sowohl die alte als auch die neue Schreibweise funktionieren. Sobald dieses jedoch deaktiviert wird, führen die alten Konfigurationsdirektiven zu einem Internal Server Error und damit zur Unerreichbarkeit Ihrer Website. Bitte prüfen Sie daher sorgfältig, ob Ihre Webseiten von den folgenden Änderungen betroffen sind.

Um den Internal Server Error zu verhindern wenn das Kompatibilitätsmodul deaktiviert wird, können Sie Ihre Konfigurationsdirektiven mit folgenden Containern absichern:

# Direktiven in diesem Container werden nur mit Apache 2.4 und neuer ausgefuehrt.
<IfModule mod_authz_core.c>
## Ihre .htaccess Konfiguration fuer Apache 2.4
</IfModule>

# Direktiven in diesem Container werden nur mit Apache 2.2 und aelter ausgefuehrt.
<IfModule !mod_authz_core.c>
## Ihre .htaccess Konfiguration fuer Apache 2.2
</IfModule>

Zugriffskontrolle

Eine Änderung betrifft den Passwortschutz. Bei diesem muss seit Apache 2.4 die "Require" Direktive immer angegeben werden. Soll der Zugriffsschutz nur für eine bestimmte Datei gelten, konnte bisher folgendes Konstrukt verwendet werden:

AuthType Basic
AuthName "Bitte anmelden"
AuthUserFile /is/htdocs/wpXXXXXXX_ABCDEFGHI/pfad/zur/.htpasswd
<Files "*">
    Require user USER
</Files>

Ab Apache 2.4 wird dies zu einem Internal Server Error führen und müsste wie folgt umgeschrieben werden:

<Files "*">
    AuthType Basic
    AuthName "Bitte anmelden"
    AuthUserFile /is/htdocs/wpXXXXXXX_ABCDEFGHI/pfad/zur/.htpasswd
    Require user USER

</Files>

Eine weitere Änderung betrifft das Verbieten von Zugriffen auf bestimmte Verzeichnisse. Hier konnte man bisher folgendes in die .htaccess Datei einfügen:

Order deny,allow
Deny from all

Für Apache 2.4 muss dies auf

Require all denied

umgeschrieben werden.

Server Side Includes (SSI)

Mit der Apache Version 2.4 wurde eine neue Syntax für Server Side Includes eingeführt. Die alte Syntax ist jedoch weiterhin als "Legacy Expression Syntax" verfügbar:

http://httpd.apache.org/docs/current/mod/mod_include.html#legacyexpr

Aktivieren lässt sich diese Syntax mit der folgenden Zeile in einer .htaccess Datei:

SSILegacyExprParser on

mod_filter

Bei mod_filter wurde die Syntax für die Direktive FilterProvider geändert.

Aus

FilterProvider COMPRESS DEFLATE resp=Content-Type$text/html

wird dann

FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} = 'text/html'"

Diese Änderung ist besonders für das CMS Contao relevant, wenn hier die Erweiterung .htaccess installiert ist.

Verbesserung der Sicherheit

Dies bezieht sich lediglich auf die Pakete Webhosting Premium und Webhosting Supreme. (später auch Webserver/Managed Server)Durch das neue Betriebssystem ändern sich für Sie die Bewertungen Ihrer SSL Anbindung im Idealfall auf A.Durch die Aktivierung von HTTP Strict Transport Security (HSTS) kann sogar ein A+ erreicht werden. Hierfür genügt folgende Anweisung via .htaccess-Datei:

Header always set Strict-Transport-Security max-age=31536000


otto.friedrich@hosteurope.de xanthippe.ypsilante@hosteurope.de hercules.ikarus@hosteurope.de