safe_mode = Off in PHP erzwingen

Der Konfigurationsparameter safe_mode gilt seit PHP 5.3 als veraltend und wurde in neueren Versionen bereits entfernt.

Es gibt mittlerweile PHP-Anwendungen, die sich weigern, bei aktiver Einstellung, also safe_mode = On zu arbeiten — in solchen Fällen muss diese Einstellung also deaktiviert werden.

Webserver-Verwaltungsoberflächen wie Confixx bieten die Möglichkeit, PHP-Parameter entweder über die Optionen, sofern freigeschaltet, zu ändern oder aber sie durch manuelle Eingabe, etwa durch:

php_admin_flag safe_mode off

im Bereich “HTTP-Spezial” oder durch Eingabe in der Datei .htaccess der aktiven Anwendung. Welche Option funktioniert, ist auszuprobieren; im Falle von Confixx ist ein Überschreiben von PHP-Konfigurationsparametenr normalerweise sogar verboten.


Klappt auch das nicht, so klappt es bestimmt mit dem Holzhammer: dabei wird die Einstellung einfach noch einmal gesetzt und erst zum Schluss aktiviert. Auf den meisten Webservern existieren in einem Verzeichnis conf.d neben (genauer gesagt liegt dort nur der Verweis) der Datei php.ini weitere Dateien mit Einstellungen, fast immer zu Modulen gehörig. Sie werden in alphabetischer Reinhenfolge geladen. Die Lösung sieht so aus, dass man sich eine weitere Datei ablegt, die zuletzt geladen wird. Bei mir sieht das so aus:

conf.d/1_ioncubeLoader.ini
conf.d/2_ZendGuardLoader.ini
conf.d/curl.ini
...
conf.d/z_imva_lastload.ini

In zuletzt genannter Datei steht in diesem Fall Folgendes:

[PHP]
safe_mode = Off

Die Angabe in eckigen Klammern gibt an, auf welchen Bereich sich die Einstellung bezieht, sie ist notwendig.

Nach einem Neustart des Apache-Webservers wird safe_mode deaktiviert und Owncloud kann installiert werden.

Kommentare deaktiviert

MySQL-Adapter MySQLi für PHP unter Linux installieren

Wählt man bei der Neuinstallation von Debian Linux die Komponenten Webserver und Datenbankserver aus, so werden beide ordnungsgemäß installiert und funktionieren auch. Erst beim Versuch, Anwendungen wie phpMyAdmin auszuführen, fällt ein Problem auf: MySQLi fehlt.

“Die Erweiterung MySQLi fehlt.”

Diese Komponenten können Sie schnell per Terminal selbst installieren. Öffnen Sie ein neues Terminal-Fenster und tippen Sie ein:

su -

Jetzt wird das Kennwort des Benutzers “root” verlangt. Danach können Sie mit der Installation fortfahren. Geben Sie ein:

apt-get install php5-mysql

Nach der Installation muss der Apache-Webserver neu gestartet werden. Geben Sie dazu noch ein:


/etc/init.d/apache2 restart

Das war’s! Jetzt können Sie phpMyAdmin und andere Anwendungen ausführen, die MySQLi (das I steht übrigens für improved) benötigen.

Veröffentlicht unter Datenbanken, Linux | Verschlagwortet mit , , , | Kommentare deaktiviert