folgenden Code ganz am Anfang meiner index.php eingebaut:
[PHP]
if ($_SERVER[„REQUEST_URI“] != „/“): @include(‚inc/content‘.$_SERVER[„REQUEST_URI“].‚.php‘); if (!@include(‚inc/content‘.$_SERVER[„REQUEST_URI“].‚.php‘)): header(„HTTP/1.0 404 Not Found“); include(‚inc/content/404.php‘); endif;
else: include(‚inc/content/home.php‘);
endif;
[/PHP]
Was mache ich da falsch? Der Text für die 404 Seite wird angezeigt, wenn die entsprechende Datei nicht gefunden wird, aber der header() Aufruf gibt einen Fehler…
Ist es so schwierig, Code ordentlich einzurücken? :???:
Du suchst in etwa das hier:
[php]$page = ‚home‘;
if ($_SERVER[„REQUEST_URI“] != ‚/‘) {
$page = $_SERVER[„REQUEST_URI“];
}
if (file_exists(‚./inc/content/‘ . $page . ‚.php‘)) {
include ‚./inc/content/‘ . $page . ‚.php‘;
} else {
include ‚./inc/content/404.php‘;
}[/php]
An REQUEST_URI können Query-Parameter (index.php?foo=bar) hängen. Auch bin ich gerade nicht völlig sicher, ob das Feld „sicher“ ist oder ob ein Nutzer dort ein „…/“ oder ähnliches reinmogeln könnte.
Auch bin ich gerade nicht völlig sicher, ob das Feld „sicher“ ist oder ob ein Nutzer dort ein „…/“ oder ähnliches reinmogeln könnte.
@freak131: Bei aller Liebe und praktischer Wertschätzung (die ist wirklich vorhanden! :)): Versuch mal, deinen Posts irgendeinen gewinnbringenden Inhalt zu geben.
Edit: Zum Beispiel das hier. Ist jetzt natürlich wieder alles vorgekaut. :?
nachdem ein teil des Pfades fest gecoded ist, sehe ich momentan keine möglichkeit eine seite unterzujubeln. was sollte also unsicher sein.
liegt die seite startend vom stammverzeichnis nicht in inc/content/ und heist home.php gibt es eine 404
http:// sollte noch abgefangen und überprüft werden.