Bob: RewriteRule funktioniert nicht mehr nach Kopieren

Beitrag lesen

Unter schule.test/wwww (also F:\Webdesign\Schule\wwww) befindet sich ein kleines CMS. Das URL-Management wird über eine .htaccess-Datei in Ordner F:\Webdesign\Schule geregelt und funktioniert ohne Probleme. Die RewriteRule, die das meiste regelt, sieht wie folgt aus:

RewriteRule ^wwww/(foo|bar)((/.*$)|($)) wwww/index.php?$1$2

So viele Klammern...
 RewriteRule ^wwww/(foo|bar)(/.*$|$) wwww/index.php?$1$2 [L]
müsste das gleiche sein.

Wenn das dein Livesystem ist (und du nicht damit umziehen musst, wo kein Zugriff auf die httpd.conf besteht), würde ich die Regeln im <virtualhost> plazieren statt im Verzeichniskontext.

Dort aber
RewriteRule ^/wwww/(foo|bar)(/.*$|$) /wwww/index.php?$1$2 [PT]

Jetzt wollte ich aber ein paar Experimente mit dem CMS anstellen und habe dazu alles nach F:\Webdesign\TestCMS kopiert (aufzurufen also über webdesign.test/TestCMS).

Welche Apache-Version nutzt du? Unter Apache 1.3 bestehen api-bedingt unter Win32-Systemen die filenames grds. in Kleinbuchstaben. Ansonsten schaue mal per RewriteLog nach, was passiert. Der Verzeichniskontext kann kompliziert werden, drum würde ich bei Zugriff auf die httpd.conf grds. den Serverkontext vorziehen. In dem Fall wäre das im <virtualhost> von webdesign.test dann

RewriteRule ^/TestCMS/(foo|bar)(/.*$|$) /TestCMS/index.php?$1$2 [PT]