Tach!
Es existieren alte URL mit jeweils wechselnden Parameter nach dem Zusatz site=100:
Der Querystring wird beim Umschreiben einer URL zunächst erstmal nicht weiter beachtet. Er geht per Default sogar verloren.
Alle diese alten URL, sollen auf die neue Ziel-URL umgeleitet werden. Die jeweiligen Parameter sollen dabei aber erhalten bleiben.
Suchst du das QSA-Flag? (QSA wie Query String Append)
RewriteCond %{QUERY_STRING} ^index.php?site=7$
index.php?
gehört nicht zum Querystring, diese Bedingung wird nicht ziehen.
RewriteRule ^/?$ https://www.neu.de/de/produkt [R=301,L]
Wie gesagt, eine Rewrite-Rule beachtet den Querystring nicht. Der kann lediglich über die RewriteCond einbezogen werden.
dedlfix.