Raketenwilli: +1 und Tipp

Beitrag lesen

Hallo Helmut,

vermutlich verwendest du php nicht als Apache-Modul (mod_php).

+1

Richtig. Bei den meisten Hostern läuft PHP (schon wegen dem, im Shared-Hosting notwendigen Switch des die Skripte ausführenden Benutzers auf den Zugang des Kunden) als fpm-fcgi.

Ersteinmal folgendes:

Die PHP-Startup-Errors braucht eigentlich allenfalls der Serveradmin, denn es zeigt Fehler, die beim Start von PHP passieren. Die haben mit den PHP-Skripten nichts zu schaffen, zeigen aber kaputte Inis oder defekte Module. Diese Infos findet ein Admin aber einfacher im Syslog bzw. Journal des Systems.

Anders ausgedrückt: Überlege, ob Du den Aufwand willst und was es bringt. Ich sehe vorliegend den Nutzen nicht.

Zum Anliegen (weil es ja nicht unbedingt um die PHP-Startup-Errors gehen muss):

Man kann mit einem Miniskript überprüfen, ob PHP als Modul, cgi oder fpm-cgi oder sonstwas läuft:

<?php header('Content-Type: text/plain'); ?>
<?=php_sapi_name(); ?>

Der universelle (fehlersichere) Einbau des Ansinnnens, php_flag zu benutzen, wird im Handbuch gezeigt:

<IfModule mod_php5.c>
  php_flag FOO BAR
</IfModule>

Das müsste aber für jede PHP-Version gemacht werden. Rolfs Tipp, statt dessen womöglich (wenn möglich, das hängt vom Ziel ab) ini_set() zu benutzen, ist zielführend. Es gäbe (falls erlaubt!) noch die user.ini und natürlich (wenn es Dein Server ist, Du also Root-Rechte hast), die php.ini selbst.

Die Liste zu ladender Module kann man vom System abfragen:

<?php header('Content-Type: text/plain'); ?>
<?=`ls "/etc/apache2/mods-enabled" 2>&1`; ?>

oder bei einem anderen (NGINX)

<?php header('Content-Type: text/plain'); ?>
<?=`ls "/etc/nginx/modules-enabled" 2>&1`; ?>

... was aber nicht funktioniert, wenn diese an anderer Stelle liegen, der Server nicht auf Linux oder meinetwegen BSD läuft oder der Zugriff (z.B.) durch eine access-control-list (acl) verboten ist.

Beachte in beiden Skripten die „Backticks“ (`)!

Literatur:

Alternative: (wer so viel schreibt, darf hoffentlich auch ein wenig „spammen“)

Ein hoffentlich hilfreiches Tool (da es fast jedes Problem schon mal gab, Quelltext und Download)

https://code.fastix.org/Projekte/PHP:Replacement für phpinfo()/

(Ansicht:)

https://home.fastix.org/phpinfo.php

Warnung:

Das sollte aber auf Deinem Server besser nicht von jedem oder jeder jederzeit abrufbar sein, da es potentiellen Angreifern Hinweise liefert. Auf meinem gibt es „ein paar Kleinigkeiten“ 😀, die beim Massenhosting eher nicht möglich sind.