# Alle Subdomains umleiten bis auf eine



## LongDonJohn (9. Januar 2008)

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.


```
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


----------



## Gumbo (9. Januar 2008)

Du brauchst für beide Fälle, HTTP und HTTPS, jeweils eine eigene Regel:
	
	
	



```
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]
```


----------



## LongDonJohn (9. Januar 2008)

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...


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


----------

