de.comp.lang.php FAQ

4.2. Wo finde ich die php.ini?

Antwort von Johannes Frömter

Die Ausgabe von phpinfo() sagt unter anderem, wo PHP4 seine Konfigurationsdatei php.ini sucht. Steht hier nur php.ini, hat PHP keine Datei gefunden und arbeitet mit Default-Einstellungen (diese entsprechen etwa denen aus der php.ini-dist); weniger irreführend ist die Ausgabe von echo get_cfg_var('cfg_file_path'), sie ist in diesem Fall einfach leer.

Bei der Kompilierung von PHP kann mit der Direktive --with-config-file-path=/dir ein Verzeichnis definiert werden; default-mäßig erwartet PHP die php.ini unter Unix in /usr/local/lib und unter Windows im Windows-Verzeichnis. Dorthin kopiert man die mitgelieferte php.ini-dist und benennt sie in php.ini um.

Neben der php.ini und den .htaccess-Dateien gibt es unter Windows auch die Möglichkeit, in der Registry PHP-Konfigurations-Einstellungen vorzunehmen - ob dies der Übersichtlichkeit dienlich ist, sei dahingestellt... Die Einstellungen wirken sich als 'local value' (siehe phpinfo() ) auf bestimmte Verzeichnisse sowie deren Unterverzeichnisse aus.

  1. Regedit öffnen

  2. Den Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE öffnen

  3. Den Schlüssel PHP anlegen

  4. Den Schlüssel Per Directory Values anlegen

  5. Einen Schlüssel für das Laufwerk anlegen, in dem sich das Document Root befindet, z.B. C oder D (ohne ':\'!)

  6. Einen Schlüssel für das Document-Root-Verzeichnis anlegen, z.B. 'www'

  7. (Für jedes Unterverzeichnis einen weiteren Unterschlüssel anlegen, z.B. 'php')

  8. Einen neuen "Zeichenfolgenwert" anlegen, z.B 'auto_prepend_file'

  9. Dem neuen Eintrag einen Wert zuweisen, z.B. 'prepend.php'

Der vollständige Schlüssel aus obigem Beispiel sollte nun so aussehen: HKEY_LOCAL_MACHINE\SOFTWARE\PHP\Per Directory Values\C\www\php -> auto_prepend_file = 'prepend.php'. Anmerkung: Egal ob der Eintrag ein bool'scher Wert, Integer oder String ist, der Schlüssel muss immer vom Typ "Zeichenfolgenwert" (engl. "string") sein.

hosted by
schlund + partner

Valid HTML 4.01! Valid CSS!

4.2. Wo finde ich die php.ini?
http://www.dclp-faq.de/q/q-php-ini.html
de.comp.lang.php FAQ | (c) Copyright 2000-2003 Das dclp-FAQ-Team