Christoph Schnauß: mod_rewrite läuft nicht...

Beitrag lesen

hallo e7,

ich hab da mal wieder ein kleines Problem...

"mal wieder"? Ich kann mich nicht erinnern, daß du schonmal Probleme hattest, jedenfalls keine kleinen *SCNR*

Erst mal zur Situation: Ich hab auf meinem Rechner PHPTriad drauf - also Apache, PHP und MySQL. Apache ist 1.3.23, System auf dem ich normalerweise mit Apache rumwerkle ist Win2k...

Da gehts schon los: ich habe keine Ahnung, ob (und wenn ja, was für eins) PHPTriad ein "bundle" ist und nicht vielleicht noch irgendwas dazugehört, was dir dazwischenfunken könnte. Und du bist sicher, daß du da wirklich einen uralten Apache 1.3.23 dabei hast? Warum nimmst du den, anstelle eines geringfügig moderneren?

Bisher ging das immer recht gut mit ein bisschen str_replace()
<?
ob_start();

Ähm, ja. Es ist anzunehmen, daß das PHP ist Damit das funktioniert, muß in deiner Apache-Konfiguration eingestellt sein, daß "ASP-tags" berücksichtigt werden sollen. Der Rest deines Scripts sieht nach flüchtigem Durchmustern ordentlich aus, probiert hab ichs aber nicht.

und in der umleitung.php hab ich dann selbst das mod_rewrite durchgeführt
Soweit hat das auch ganz gut funktioniert

Mir ist immer etwas unwohl, wenn man mit PHP Aufgaben löst, die Aufgaben des Webservers sind und sich auch ohne PHP in der httpd.conf lösen ließen. Das ändert nichts daran, daß dein Weg durchaus Erfolg bringen kann.

In der httpd.conf hab ich die auskommentierten Zeilen einkommentiert:
LoadModule rewrite_module modules/mod_rewrite.so

Schwer verständlich, wieso das vorher "auskommentiert" war

AddModule mod_rewrite.c

ups ... achso, ja, ist ja ein apache-Oldie ...

AllowOverride hab ich nachdems normal nicht ging an allen interessanten Stellen auf all gesetzt - und geht immer noch nicht... Es kommt immer die Meldung:
Not Found

Was mit AllowOverride nun wirklich nichts zu tun hat. Für deinen lokalen Server, auf dessen zentrale Konfiguration du ja uneingeschränkten Zugriff hast, ist in diesem Fall AllowOverride auch einigermaßen uninteressant.

The requested URL /forum/ was not found on this server.

Interessant. Genau an _dieser Stelle_ solltest du zu überlegen anfangen. "/forum" ist beispielsweise im strengen Sinn keine URL, aber ein Pfad, der zur DocumentRoot führen soll. Ändere das mal in eine absolute URL um.

Was also will dieser Apache noch von mir, dass er meine Rewrites durchführt?

Möglicherweise will er als ein Apache behandelt werden, der auf einer Windows-Kiste schuftet.

Was mich verwirrt ist der Einsatz einer .htaccess auf deiner lokalen Kiste. Probiere deine "rules" erstmal in der httpd.conf durch, dann weißt du auch, welche Werte in einer .htaccess berücksichtigt werden möchten.

Grüße aus Berlin

Christoph S.