Использование History.js с URL-адресами mod_rewritten - PullRequest
0 голосов
/ 24 ноября 2011

У меня есть страница поиска, расположенная по адресу http://www.example.com/search_result.php,, и я изменяю ее как http://www.example.com/search-result.

По сути, я хочу сделать то, что History.js демо делает - добавляет произвольную строку в конец URL (с #, если это браузер HTML4).Демонстрация отлично работает в моем браузере - однако тег <base> моего сайта указывает на корневой каталог на всех страницах, и я думаю, что именно это нарушает поведение моего сайта.

Вот что происходит: если мой переписанный URL заканчиваетсяпри / браузеры HTML4 переходят в бесконечный цикл URL-адресов, добавляя строку в конец URL-адреса.Если это не так, я теряю часть search-result моего URL в браузерах HTML5, и добавление "search-result/ к выражению также добавляет его после # в браузерах HTML4.

И если я изменяюбазовый тег, страница ищет свои файлы (CSS, JS, изображения, все) в несуществующей директории /search-result/.Итак, я облажался.

Итак, как мне это исправить?Или я должен искать другую библиотеку?Есть RSH, но он не обновлялся с 2007 года ...

1 Ответ

2 голосов
/ 24 ноября 2011

Не могли бы вы использовать что-то подобное, чтобы исключить определенные каталоги из перезаписи?

RewriteCond $1 !^(scripts|styles|images)
RewriteRule your-rewrite-rule-here [L]
...