Замыкаем все в .htaccess на index.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L,QSA]
В index.php обрабатываем $_SERVER['PATH_INFO'] ( var_dump в помощь ) и, в зависимости от того, на какой адрес перешли, генерируем мета-теги и инклудим соответствующий php-файл. Например, если в PATH_INFO /contacts, то include('contacts.php') и так далее.
В contacts.php используем include('header.php'), include('footer.php'), но это можно в index.php делать, а потом инклудить только форму контактов сразу, или другой контент из другого файла
И далее по аналогии