Baba: mod_rewrite

Beitrag lesen

Hailo und nochmals vielen Dank.

REQUEST_URI kann nie leer sein. Da muss mindestens / drinstehen.

Das ist richtig. Ein "/" steht drin.

Wie bereits von mir und Sven empfohlen, mit simplem Rewrite und Selbstauswertung von Request-URI und HTTP-Host.

Gut. Ich habe jetzt einen Kompromiss gemacht aus mod_rewriterei und Selbstauswertung. Dies ist die (fast) gesamte .htaccess:

# remove trailing slash and reload  
RewriteCond %{HTTP_HOST} !route\.example\.com$ [NC]  
RewriteRule (.*[^/])/$ /$1 [R=301,L]  
  
# redirect www.<subdomain>. to <subdomain>. (duplicate content)  
RewriteCond %{HTTP_HOST} ^www\.(.*)\.example\.de$ [NC]  
RewriteRule (.*) http://%1.example.de/$1 [R=301,L]  
  
# redirect <subdomain>.example.de to example.de/<subdomain>.php  
RewriteCond %{HTTP_HOST} !route\.example\.de$ [NC]  
RewriteCond %{HTTP_HOST} ^(.*).example.de$ [NC]  
RewriteRule (/?.*) http://route.example.de/%1.php/$1 [P]  
  
# redirect to /index.php if file does not exist  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule (.*) /index.php/$1 [QSA]  

Vielen Dank für alle Hilfe. Auch wenn immer noch der Proxyrequest drin ist, verwende ich es jetzt so. Es tut einfach  genau, was ich möchte.

Cheers,
Baba