(#1):
RewriteRule ^([^/\.]*)/$ hl.php?bereich=$1um über '/grundlagen' auf /hl.php?bereich=grundlagen zuzugreifen.
Das klappt, '/grundlagen' wird in der Adresszeile allerdings automatisch zu '/grundlagen/'.
Ein Verzeichnis grundlagen/ existiert auch physisch auf dem Server? Dann bist du auf einen (bereits bekannten) Bug gestoßen. Nach dem fixup-hook von mod_rewrite und dem internal redirect processing, läuft der fixup-hook von mod_dir des ursprünglichen Requests. Er läuft folglich noch mit einem eigentlich nicjht mehr korrekten r->uri-Wert, was nunmehr zu dem unterwünschten Redirect durch mod_dir führt.
Du musst dir das (vereinfacht) so vorstellen:
mod_rewrite fixup orig. request
internal redirect
mod_rewrite fixup internal redirect
mod_dir fixup internal redirect
ende internal redirect
mod_dir fixup orig. request <-- hier entsteht das Problem
content handler
Also nachdem das Processing des internal redirects abgeschlossen ist, greift erst der fixup-hook des urspr. requests von mod_dir. Das führt zu dem o.a. Fehlverhalten. Normalerweise müssten nach dem Einleiten des internal redirects durch mod_rewrite alle weiteren fixup-hooks des urpsr. requests gecanceled werden.