mod_rewrite и history.js в браузерах html4 - PullRequest
0 голосов
/ 15 декабря 2011

У меня есть сайт вроде:

http://*mysite.com/search/

в нем index.php создает History.pushState () для history.js

так выглядит:

http://*mysite.com/search/var1-var2-var3.html (html5)
http://*mysite.com/search/#var1-var2-var3.html&_suid=** (html4)

проблема в том, как создать правило перезаписи для html4-версии ссылки, возможно ли с этим хеш-ключом?

Правило перезаписи html5 выглядит так:

RewriteRule ^([^-]+)-([^-]+)-([^-]+).html$ index.php?var1=$1&var2=$2&var3=$3 [L]

1 Ответ

0 голосов
/ 15 декабря 2011

Нет, невозможно использовать этот ключ хеша в mod_rewrite.

mod_rewrite не поможет перехватить эти переменные в html4 html, потому что все, что после хеш-метки, не будет отправлено на сервер. Если вы измените только хэш-метку и сохраните тот же URL-адрес до хеш-метки, сервер даже не попадет.

Итак, вам нужно проанализировать эту часть URL, используя javascript, а затем отправить свой удар через ajax. URL, отправленный на сервер, может быть одинаковым для html4 и html5.

...