Alle Subdomains umleiten bis auf eine

LongDonJohn

Mitglied
Hallo zusammen,

ich möchte, dass auf meinem Webserver die Anfrage domain.de auf http://www.domain.de umgeleitet wird. Dafür habe ich auch die passenden Zeilen für meine .htaccess-Datei gefunden.

PHP:
RewriteCond %{HTTPS} (on)?
RewriteCond %{HTTP:Host} ^(?!www\.)(.+)$ [NC]
RewriteCond %{REQUEST_URI} (.+)
RewriteRule . http(?%1s)://www.%2%3 [R=301]

Allerdings habe ich eine Subdomain, die ich erreichen muss und nicht umgeleitet werden darf, was mit der obrigen Regel aber nicht geht. Wie müsste ich das oben abändern, damit ich eine Ausnahme definieren kann?

Vielen Dank im Voraus!
John
 
Du brauchst für beide Fälle, HTTP und HTTPS, jeweils eine eigene Regel:
Code:
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301]

RewriteCond %{HTTPS} !on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301]
 
Habe einen Windows-Server mit ISAPI-Rewrite von Helicontech und die Regel stand dort als Beispiel.

Das HTTPS ist aber auch nicht so wichtig, da ich kein HTTPS verwende. Aber ich müsste halt definieren, dass nicht nur www. nicht umgeleitet wird, sondern noch eine weitere Subdomain. Habe es mit folgender Abänderung deines Vorschlages probiert, aber das funktioniert leider nicht...

HTML:
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP_HOST} !^www\.|!^subdomain\.
RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301]
 

Neue Beiträge

Zurück