Алексей
Перед этим хедером сделай вывод тестовый, типа
<?print 1?>
Если сработал - убери вывод единицы, потом сделай тоже самое в index.php того каталога, на который ведет header().
Ошибка, которую ты указал в самом начале говорит о том, что
а) либо нет индексного файла в каталоге (по твом словам он есть, т.к. index.php есть, и как индексный он обрабатывается), либо индексный файл выполняет какой-то код, который выкидывает форбидден. Ксати это лекго проверить, добавив в .htaccess вот такую строчку:
ErrorDocument 403 /403.htm
И создать в корне сайта файл 403.htm с текстом "Доступ запещен".
Если файл откроется, то, скорее всего, что-то не то со скриптом (с каким именно - нужно отслеживать принтами), может что-то с настройками.
Во всяком случае проблема точно не с mod_rewrite, т.к. он 100% рабочий.