You are here

Subdomains von permanent redirect ausschließen

In der Regel ist eine Webseite ja immer über zwei URLs erreichbar: meine-domain.de und www.meine-domain.de. Damit der Zugriff aber immer einheitlich erfolgt, trage ich in der Regel eine Rewrite-Regel in die .htaccess-Datei des Apache ein:

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*) http://www.meine-domain.de/$1 [R=301,L]

Ja, ja, ich weiß, andere wollen das www immer weghaben. Ich möchte es aber mit www davor ;-). Mit dieser Regel wird beim Aufruf von meine-domain.de automatisch auf www.meine-domain.de umgeschrieben... und damit die Suchmaschinen nicht motzig werden, wird das ganze als permanent redirect gemacht (dafür steht das R=301).

Wenn man Subdomains verwendet möchte man diese aber ggf. von dem Umschreiben ausnehmen. Dazu bedarf es einer zusätzlichen Regel, die mit der ersten ODER-verknüpft (durch das [OR] am Ende der ersten Zeile) wird. Diese zusätzliche Regel braucht's für jede auszuschließende Subdomain - und immer schön mit [OR] verbinden! Hier das Beispiel um die Subdomain subdomain1.meine-domain.de von dem Umschreiben auszunehmen:

RewriteCond %{HTTP_HOST} !^www\. [NC] [OR]
RewriteCond %{HTTP_HOST} !^subdomain1\.meine-domain\.de$ [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*) http://www.meine-domain.de//$1 [R=301,L]

So, und hier noch die Version um das www vorne wegzukriegen:

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*) http://meine-domain.de/$1 [R=301,L]