RewriteEngine on
RewriteRule ^upload/(.*)$ http://www.site.com [R=301,L]
Vorneweg: So eine simple Weiterleitung hättest du mit Redirect auch einfacher lösen können.
Wie kann ich den Upload-Ordner und dessen Unterordner vom Zugriff z.B. über eine Pfadeingabe in der URL-Leiste schützen, aber auf die Dateien, die in den Unterordnern enthalten sind, zugreifen?
Entweder benutzt du die im HTTP-Protokoll eingebaute Zugangskontrolle (oft als .htaccess-Schutz bezeichnet), dann läuft's automatisch, oder du bastelst eine Zugangskontrolle, die auf dem von dir verwendeten System basiert, diesen Ordner ersetzt und statt ihm seine Inhalte ausliefert.
Mit der Weiterleitung wird das so oder so nix, genau genommen ist sie auch falsch, weil hier eine Fehlermeldung hingehört.