Cold Carnage
Lt. Junior Grade
- Registriert
- Juli 2010
- Beiträge
- 417
Ich habe ein älteres Content-Management-System (welches spielt keine Rolle) in dem folgende Zeile vorkommt:
Das funktioniert allerdings seit einigen PHP-Versionen nicht mehr. Mir ist die Umstellung nach einigen Versuchen bisher leider noch nicht gelungen. Ich bin ein nahezu absoluter Amateuer in PHP, komplett eigene PHP-Scripte programmiere ich nicht. Daher dachte ich mir, ich frage hier mal nach, ob jemand so lieb ist und mir aufzeigt, wie man die Zeile jetzt umschreiben muss beziehungsweise kann. Mit preg_match()? Mit strpos()? Oder mit strstr()?
Vielleicht liefert gleich jemand die konkrete Antwort, das wäre super hilfreich (mehr als eine Lernaufgabe)!
Mir erschließt sich noch nicht einmal so ganz, wozu diese Zeile überhaupt genau da ist. Ist das eine Art Sicherheitsabfrage? Ist diese möglicherweise in der neuen PHP-Version obsolet und kann weg?
Vorab vielen Dank für alle konstruktiven Beiträge!
Code:
if(eregi("file.php", $_SERVER["PHP_SELF"]) || eregi("file.php", $HTTP_SERVER_VARS["PHP_SELF"])) die("Access denied!");
Das funktioniert allerdings seit einigen PHP-Versionen nicht mehr. Mir ist die Umstellung nach einigen Versuchen bisher leider noch nicht gelungen. Ich bin ein nahezu absoluter Amateuer in PHP, komplett eigene PHP-Scripte programmiere ich nicht. Daher dachte ich mir, ich frage hier mal nach, ob jemand so lieb ist und mir aufzeigt, wie man die Zeile jetzt umschreiben muss beziehungsweise kann. Mit preg_match()? Mit strpos()? Oder mit strstr()?
Vielleicht liefert gleich jemand die konkrete Antwort, das wäre super hilfreich (mehr als eine Lernaufgabe)!
Mir erschließt sich noch nicht einmal so ganz, wozu diese Zeile überhaupt genau da ist. Ist das eine Art Sicherheitsabfrage? Ist diese möglicherweise in der neuen PHP-Version obsolet und kann weg?
Vorab vielen Dank für alle konstruktiven Beiträge!