was ist da los ?

Wie wir alle wissen (sollten) ändert mod_rewrite keine Links im Script. Damit auch die Links auf Deiner Page auf die neuen "Rewrited URLs" zeigen bedarf es der Anpassung im Code. Fragen und Probleme rund um's Coding werden hier diskutiert.

Moderator: Super-Mod

was ist da los ?

Beitragvon heinetz1 » 17.09.2007 16:55

Hallo Forum,

ich habe zum ersten Mal mit mod-rewrite experimentiert und bin sogar zum gewünschten Ergebnis gekommen. Aber nun muss
ich ein Phänomen beobachten, dass ich nicht verstehe. Meine RewriteRules habe ich in einer .htaccess definiert, die direkt im
DocumentRoot liegt. Es sind etwa 400 Rules nach dem Muster:

RewriteRule ^Impressum/$ /_content/?site_id=138&%{QUERY_STRING}

Die .htaccess wird von einem Sript auf dem Webserver generiert, wenn ein Redakteur eine neuen Seite mit dem selbstgebastelten CMS
veröffentlicht. Dieser Prozess nimmt den Server einigermassen in Anspruch und benötigt einige Rechenzeit, aber das kommt nicht so oft
vor. Um abzufangen, dass die .htaccess doch nicht akuell ist, habe ich ausserdem ein ErrorDocument definiert, dass statt nur zu sagen,
dass die angeforderte URL nicht 'da' ist, erstmal diese .htaccess aktualisieren und dann darin nachsehen soll, ob es für de angeforderte URL
nicht noch eine RewriteRule gibt, insofern die angeforderte URL doch zur Verfügung steht, um dann dhin per header(location:) weiterzuleiten.

Das funktoniert auch soweit: Wird eine URL angefordert, die nicht 'da' wird der prozess gestartet, die htaccess neu zu schreiben,
(es dauert etwas) und dann wird dahin weitergeleitet. Das Phänomen ist, dass das ErrorDocument häufig aufgerufen und damit
der Prozess gestartet wird, obwohl es eine RewriteRule für die URL gibt.

Das ganze sieht für mich so aus, als würde der Apache noch garnicht alle Rules gelesen haben
und vorher auf das ErrorDocument umleiten. Kann das sein ?

danke für eure Tipps und

beste gruesse,
heinetz1
heinetz1
.
.
 
Beiträge: 3
Registriert: 17.09.2007 16:25

Beitragvon Gumbo » 24.09.2007 10:05

Vielleicht solltest du das URL Routing mit PHP übernehmen, da das aufgrund der Möglichkeit, auf eine Datenbank zuzugreifen, viel flexibler ist als für jeden Fall eine eigene Regel zu definieren.
Markus Wulftange
Gumbo
Moderator
Moderator
 
Beiträge: 5019
Registriert: 07.01.2005 01:18
Wohnort: Trier


Zurück zu Programmierung & Scriptanpassung für mod_rewrite

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron