Используйте Ajax and HTML5 history api.
У меня был успешный опыт реализации сайта полностью с динамичным контентом.Но тут же вставал вопрос об индексации.
Я решил его обычной версией сайта.В ссылках href прописывал на обычные странички.
Но перехватывал клик и выдёргивал только нужный контент из них.
Ну и если у пользователя будет отключен javascript или ещё какой-нибудь гемор(Что кстати ещё не редкость
) он просто переходил на обычную страничку.
Вот простейший пример того о чём я говорю
click
А history api полностью решает проблемы с историей и кнопками "вперёд""назад" и ещё много геморроя который возникает с ajax сайтами
Профессор Маркап говорит:
Если ваше веб-приложение потерпит неудачу в браузерах с отключенными скриптами, собака Якоба Нильсена придет к вам домой и насрет на ваш ковер.