RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Funktioniert soweit. Das Problem: Für eine andere Domain ist eine Umleitung an ein Unterverzeichnis unterhalb der Hauptdomain eingerichtet, und das soll von der http-zu-https-Umleitung erstmal ausgenommen werden.
Was ich bisher probiert habe: Eine weitere Bedingung in die .htaccess der Hauptdomain hinzugefügt, damit nur URLs mit diesem Host umgeleitet werden:
RewriteCond %{HTTP_HOST} ^(www\.)?hauptdomain.de
Funktioniert aber nicht; URLs mit der anderen Domain werden ebenfalls zu https geändert.
Das sieht für mich soweit stimmig aus. Tipp: Du hast Dir beim Testen schon einen 301 für die andere Domain eingefangen. 301 landen im Browsercache.
Gegenprobe: einfach mal Inkognitomodus probieren.