2010-06-19 6 views
6

Seit einigen Tagen versuche ich eine einfache mod_rewrite-Regel zu erstellen, um freundliche URLs zu erstellen, mein Webhost hat mod_rewrite aktiviert, aber ich kann es einfach nicht zum Laufen bringen.Apachen mod_rewrite VS. PHP-Routing?

Alle die nächsten Fragen, bei denen die von mir geschrieben:

  1. .htacces to create friendly URLs
  2. Friendly URLs with .htaccess
  3. .htacces NOT working…

Keine der Antworten gearbeitet, so dass ich denke jetzt einfach PHP-Routing stattdessen und ich wollte wissen, ob es eine große Leistung oder SEO Unterschied zwischen den beiden gibt. Und wenn, dann weißt du vielleicht, wie man die Probleme mit mod_rewrite beheben kann, die in meinen Fragen gepostet wurden.

Danke.

Antwort

4

Wenn Sie PHP-Routing verwenden für PHP nur Dateien, wäre es kein Problem, Performance-weise werden: Der Dolmetscher wird sowieso ein neuer Prozess beginnen gestartet, Speicher zugewiesen usw.

Aber wenn Sie planen, Um Anfragen für statische Ressourcen wie Bilder und Stylesheets zu routen, verwenden Sie jedoch nicht PHP-Routing unter allen Umständen. Es ist viel zu ressourcenintensiv und nicht das, wofür PHP gebaut wurde.

Ich würde sagen, mod_rewrite ist die bessere, schlankere Lösung und es ist einen Versuch wert, es herauszufinden.

+0

Mit mod-rewrite möchte ich an index.php nur Dateien mit der Erweiterung .php senden. Wie ich es mache? – Jonathan

+0

@ Jonathan nun, das kommt drauf an ... Aber dann bist du schon drin in deinen anderen Fragen. Es scheint einen geheimnisvollen Haken zu geben, warum es nicht für dich funktioniert. Ich kann nicht wirklich neue Einsichten zu dem, was dort schon gesagt wurde, entschuldigen. –

0

Ich ziehe Routing, die anspringt, wenn die angeforderte Datei nicht existiert, wie dies in Lighttpd:

server.error-handler-404 = "/index.php" 

Vorausgesetzt, Sie finden heraus, wie dies in Apache zu tun, Ihr Skript mehr Quer Webserver kompatibel wäre , da die mod_rewrite-Bedingungen von Apache in .htaccess nicht auf Lighttpd funktionieren.

+1

Dies sollte als letzter Strohhalm verwendet werden, wenn andere Dinge nicht IMO arbeiten. Bei dieser Konfiguration generiert * jede * Seitenanforderung eine 404, die protokolliert wird, und abhängig von der Serversoftware werden nicht alle Umgebungsvariablen aus der ursprünglichen Anforderung immer zum 404-Handler umgeleitet (zumindest in Apache). –