Deine RewriteRule ist falsch.
Auszug aus der htaccess.default:
Code:
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
Der Punkt muss escaped werden, da er eine spezielle Bedeutung hat in der Rewrite Regel.
Deine "." benötigen einen Backslash davor "\.". Der Backslash sorgt dafür, dass der Punkt ein Punkt ist und nicht für nahezu jedes Zeichen steht. (http://www.regular-expressions.info/dot.html)
Code:
RewriteCond %{HTTP_HOST} ^domain\.at$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.at$ [NC]
RewriteRule ^(.*)$ http://www.domain.at/de-AT [R=301,L]
RewriteCond %{HTTP_HOST} ^domain\.de$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.de$ [NC]
RewriteRule ^(.*)$ http://www.domain.de/de-DE [R=301,L]
RewriteCond %{HTTP_HOST} ^domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.at/de-AT [R=301,L]
Aber funktionieren wirds wahrscheinlich trotzdem nicht wie gewünscht.
Du verlierst alle Parameter bei deiner Vorgehensweise. Egal welcher Link geklickt wird, landet die Person immer auf der Startseite.
Wieso nutzt du nicht das Multidomain Feature in der Wurzel-Seite? Da kannst du domains eintragen im CMS und die eine Schreibst du auf die .at Domain um in der htaccess Datei. Das ist am einfachsten
Lesezeichen