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