GusakovNick, подскажите пожалуйста, а почему вот так не работает:
RewriteRule ^/([^/]+)/?$ $1.php [L]
то есть я тут хочус любые страницы (/index.php, /video.php) заменить на (/index, /video)
Не знаю почему не работает, я не люблю регулярки.
Я знаю что у приложения должна быть одна точка входа, можете ее назвать как угодно, но обычно это index.php, иногда app.php, можно jeysmook.php, если так больше нравится
PHP:
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /path/to/app
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Вот кстати у вас не хватает строчки RewriteCond %{REQUEST_FILENAME} !-f - она останавливает rewrite, если по адресу запроса лежит файл

Вы собираетесь на каждый роут создавать новый файл? Не лучше ли написать роутер, который будет вызывать контроллеры? Если вам нужно будет чтобы /catalog и главная(/) были одной и той-же страницей - один из скриптов будет инклудить другой?)