Wie man Konfigurationseinstellungen ändert

PHP läuft als Apachemodul

Wenn man PHP als Apachemodul verwendet, kann man die Konfigurationseinstellungen mittels Direktiven in den Apache-Konfigurationsdateien (z. B. httpd.conf) und .htaccess-Dateien ändern. Dafür benötigt man "AllowOverride Options"- oder "AllowOverride All"-Privilegien.

Es gibt verschiedene Apachedirektiven, die es erlauben, die PHP-Konfiguration aus den Apache-Konfigurationsdateien heraus zu ändern. Für eine Liste von Direktiven, die als PHP_INI_ALL, PHP_INI_PERDIR, oder PHP_INI_SYSTEM definiert sind, werfen Sie einen Blick auf den Anhang Liste von php.ini Einstellungen.

php_value Name Wert

Setzt den Wert der angegebenen Direktive. Kann nur für Direktiven mit den Typen PHP_INI_ALL und PHP_INI_PERDIR verwendet werden. Um einen vorher gesetzten Wert zu löschen, verwenden Sie none als Wert.

Hinweis: Verwenden Sie php_value nicht, um boolesche Werte zu setzen. php_flag (siehe unten) sollte stattdessen verwendet werden.

php_flag Name on|off

Setzt eine boolesche Konfigurationsdirektive. Kann nur für Direktiven mit den Typen PHP_INI_ALL und PHP_INI_PERDIR verwendet werden.

php_admin_value Name Wert

Setzt den Wert der angegebenen Direktive. Dies kann nicht in .htaccess-Dateien verwendet werden. Jeder Direktiventyp, der mit php_admin_value gesetzt wird, kann nicht durch .htaccess-Direktiven oder mit ini_set() überschrieben werden. Um einen vorher gesetzten Wert zu löschen, verwenden Sie none als Wert.

php_admin_flag Name on|off

Setzt eine boolesche Konfigurationsdirektive. Dies kann nicht in .htaccess-Dateien verwendet werden. Jeder Direktiventyp, der mit php_admin_value gesetzt wird, kann nicht durch .htaccess-Direktiven oder ini_set() überschrieben werden.

Beispiel #1 Apache-Konfigurationsbeispiel

<IfModule mod_php5.c>
  php_value include_path ".:/usr/local/lib/php"
  php_admin_flag engine on
</IfModule>
<IfModule mod_php4.c>
  php_value include_path ".:/usr/local/lib/php"
  php_admin_flag engine on
</IfModule>

Achtung

PHP-Konstanten existieren nicht außerhalb von PHP. So kann man z. B. in der httpd.conf nicht PHP-Konstanten wie E_ALL oder E_NOTICE verwenden, um den Wert der error_reporting-Direktive zu ändern, da diese keine Bedeutung haben und als 0 ausgewertet werden. Verwenden Sie stattdessen die zugehörigen Bitmasken-Werte direkt. Diese Konstanten können in der php.ini verwendet werden.

Die PHP-Konfiguration mit der Windows Registry ändern

Wenn Sie PHP unter Windows einsetzen, können Sie die Konfigurationseinstellungen für jedes einzelne Verzeichnis mit der Windows-Registry anpassen. Die Werte der Konfiguration werden unterhalb des Registrierungsschlüssels HKLM\SOFTWARE\PHP\Per Directory Values in den zum Verzeichnisnamen passenden Unterschlüssel gespeichert.Zum Beispiel würden Werte für das Verzeichnis c:\inetpub\wwwroot im Registrierungsschlüssel HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot gespeichert werden. Die Einstellungen für dieses Verzeichnis wären für alle Skripte aktiv, die in diesem Verzeichnis oder einem seiner Unterverzeichnisse laufen. Die Werte in diesem Schlüssel sollten den Namen eine PHP- Konfigurationsdirektive und einen Zeichenkettenwert haben. Konstenten in den Werten werden nicht ausgewertet. Es können jedoch nur Werte, die in PHP_INI_USER änderbar sind, auf diese Weise gesetzt werden, nicht als PHP_INI_PERDIR deklarierte Werte, da diese Konfigurationswerte für jeden Request erneut gelesen werden.

Andere Zugänge zu PHP

Egal wie Sie PHP betreiben, Sie können bestimmte Werte zur Laufzeit Ihrer Skripte mittels ini_set() setzen. Werfen Sie dazu einen Blick auf die Dokumentation von ini_set().

Wenn Sie an einer kompletten Liste von Konfigurationseinstellungen Ihres Systems inklusive deren aktuellen Werten interessiert sind, können Sie die Funktion phpinfo() ausführen und die daraus resultierende Seite betrachten. Sie können auf die Werte einzelner Konfigurationsdirektiven zur Laufzeit mittels ini_get() oder get_cfg_var() zugreifen.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

PhpStorm 2022. 3 Update mit PHP 8.3 Unterstützung

PhpStorm 2022. 3 Update mit PHP 8.3 Unterstützung

PhpStorm unterstützt jetzt PHP 8. 2, die neueste Version von PHP. Somit können alle neuen Funktionen genutzt werden, die in der PHP 8. 2 Version eingeführt wurden. ...

admin

Autor : admin
Kategorie: Software-Updates

Was muss ich in WordPress einstellen, damit Google Fonts nicht mehr geladen werden?

Möchten Du WordPress davon abhalten, Google Fonts zu verwenden? Hier erfährst Du, was du dafür in WordPress einstellen musst. ...

admin

Autor : admin
Kategorie: Sonstige Tutorials

Abmahnwelle durch Google Fonts - was ist zu beachten und wie schütze ich mich?

Abmahnwelle durch Google Fonts - was ist zu beachten und wie schütze ich mich?

Eine Abmahnwelle wegen Google Fonts rollt derzeit durch das Land und verunsichert viele Betreiber von Webseiten. Ausschlaggebend hierfür war ein Urteil des Landgerichts München vom 20.01.2022. ...

Bernie

Autor : ebiz-consult GmbH & Co. KG
Kategorie: Dies und Das

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Text import mit š

leider habe ich keinen Ansatz mehr, habe nun behelfsmäßig alle betreffenden Zeichen im csv als Zeichen wie & oder % gesetzt und diese dann mit r ...

Geschrieben von jamessbuzzz am 01.12.2022 15:02:54
Forum: PHP Developer Forum
eMail Neuregistrierung

Besser spät als nie: Es gab einen Relaunch mit dem wir sowohl das Forum als auch den Rest der Webseite mal etwas modernisiert haben. Im Zuge der ...

Geschrieben von Jens am 28.11.2022 15:42:59
Forum: News / Kostenloses
.htaccess

Kannst du vielleicht mit 1-2 Beispielen ausführen was du erwartest und wie das tatsächliche Verhalten ist? So spontan würde ich erwarten, dass ...

Paginator - Normale Abfrage klappt einwandfrei ...

Das nennt sich "seitenweises blättern". Du musst mit Links und den entsprechenden Parametern arbeiten. Ich habe anno dunnemals dazu ein Tutorial ...

Geschrieben von Kropff am 25.11.2022 18:07:20
Forum: PHP Developer Forum