Ich arbeite an einem Webseitenprojekt. Ich entschied mich für Apache, PHP (5.1.7, Version von meinem Dienstanbieter) und Dwoo (Templating) für diesen Zweck.
Ich möchte URLs zu meinen Vorlagen leiten. Ich bin mir bewusst, dass es viele Frameworks gibt, die so etwas tun. Ich frage mich nur, ob es einen schönen Weg gibt, es ohne zu erreichen.
Ich habe mein Projekt wie folgt eingerichtet:
Es gibt eine minimale Menge an Geschäftslogik (kein echtes Modell). Es sind alles nur ziemlich statische Seiten. Die Verwendung von Vorlagen erleichtert die Wartung (Vererbung).
Haben Sie eine Idee, wie Sie in diesem Fall das Routing einrichten? Ich denke, idealerweise sollte jede gegebene URL über index.php routen, das dann irgendwie entscheidet, welche Vorlage zu rendern ist (dh. / Category / pagename würde zu templates / category / pagename.tpl zugeordnet werden).
Verwenden Sie mod_rewrite
, um alles auf eine einzelne index.php
-Datei zu routen. Überprüfen Sie dann die Variable in $_SERVER['REQUEST_URI']
in dieser Datei, um sie an den erforderlichen Handler zu senden.
Diese Konfiguration aktiviert mod_rewrite
, falls installiert:
Wie trolskn (+1) beschreibt:
Verwenden Sie
mod_rewrite
, um alles auf eine einzelneindex.php
-Datei zu routen. Überprüfen Sie dann die Variable in$_SERVER['REQUEST_URI']
in dieser Datei, um sie an den erforderlichen Handler zu senden.
Aber ich fand das folgende .htaccess
(in den Ordner mit dem index.php
gestellt, das alles danach "konsumieren" sollte) viel hilfreicher:
Ich möchte auch darauf hinweisen, dass Sie möglicherweise auf die Nachricht
stoßen %Vor% Dies kann leicht mit sudo a2enmod rewrite && sudo service apache2 restart
( Quelle )
Tags und Links php apache url-rewriting url-routing dwoo