Moin!
RewriteCond %{HTTP_HOST} !^www.example.de$
RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]hinzufüge, funktionieren die Subdomains nicht mehr, sondern es wird einfach wieder alles auf die www.example.de umgeleitet.
ich übersetze mal Deine Kondition: alles was nicht mit dem HTTP_HOST "www.example.de" entspricht wird zu "www.example.de" umgeleitet.
Du willst aber alles, was ohne "www." oder eine andere Subdomain aufgerufen wurde zu "www.example.de" umleiten.
Dann schreib das dem Indianer so auf:
RewriteCond %{HTTP_HOST} !^example\.de$
RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301] # Dies löst bei erfüllter Kondition einen neuen HTTP-Request aus.
Jetzt willst Du noch einige Order umschreiben, so dass diese als "Subdomain" benutzt werden können. Das ist aber unsinn. Richte die Subdomains ordentlich als solche ein. Hinweise hierzu liefert der Abschnitt virtuelle Domains (namensbasiert) der Apache-Dokumentation.
Solltest Du dazu konkrete Fragen haben oder sollte es Dir aus administrativen Gründen nicht möglich sein, dann frag hier wieder unter Angabe des Problems.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix