dedlfix: Mit .htaccess alle Requests von einem Skript abhandeln lassen

Beitrag lesen

Tach!

RewriteCond %{HTTP_HOST} ^(.+?)\.example\.com$
RewriteCond %1::%{REQUEST_URI} !^(.*?)::/\1/main.pl
RewriteRule ^(.*)$ /%1/main.pl/$1 [L]

Die erste Cond ist also nur da, um die Subdomain als Backreferenz zu erhalten. Die zweite hat anscheinend einen Fehler, weil da statt \1 wohl %1 stehen sollte. Aber an der Stelle muss doch gar nicht großartig die Subdomain hinzuverknotet werden, wenn du sie sowieso nur auf .* vergleichst. Es sollte reichen, %{REQUEST_URI} auf !^/%1/main.pl zu prüfen. Andererseits solltest du diese Regel auch weglassen und stattdessen auf existierende Dateien und Verzeichnisse prüfen können, also

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

Oder hast du einen Anwendungsfall, auch existierende Dateien (außer den main.pl) umzuschreiben?

dedlfix.