Ваша проблема в том, что для этого обязательно потребуется использование хеша, а не переменной GET (поскольку GET требует обновления страницы, а хеш - нет).Это делается с помощью переменной window.location.hash
в JavaScript, которая обновляется всякий раз, когда содержимое URL-адреса после # изменяется (например: если бы я изменил http://site.com/#lol
на http://site.com/#lmao
, window.location.hash
изменился бы с #lol
до #lmao
).Хэши обычно используются на навигационных сайтах на основе Ajax, таких как Twitter (я думаю, что Google также реализует это).
Если вы используете jQuery, вы должны попробовать плагин jQuery BBQ что позволит вам выполнять такие действия, как обнаружение изменения хеша (в противном случае вам придется самостоятельно внедрить какой-то подобный движок, поскольку он понадобится для любого вида навигации на основе хеша).
Выоднако следует помнить, что это не имеет ничего общего с mod_rewrite, поэтому вам не нужно добавлять какие-либо правила перезаписи.Вся ваша работа (выборка данных и т. Д.) Будет выполняться с помощью Ajax XML HTTP-запросов, а не общих HTTP-запросов.
Используя это, вы можете сделать свой URL похожим на http://site.com/#!/post/1
(это может пойти в любом формате, который выхотелось бы, например http://site.com/#!/p/this-is-the-posts-title
) вместо http://site.com/?post=1
, хотя вы бы пропали на http://site.com/post/1
.