htaccess - # как строка, а не как комментарий - PullRequest
1 голос
/ 17 марта 2012

Я решил это сам: «RewriteRule ^ page / @ ([a-zA-Z0-9] +) / $ index.php? Page = $ 1» в htaccess и «if ($ _ GET ['page']» == "" {/ javascript, который выполняет прокрутку до цели /} "в ​​php!


Я хочу изменить http://www.example.com@test на http://www.example.com#test. Это # будет использоваться в качестве цели. Моя проблема в том, что при переписывании URL он думает, что все после # является комментарием. Вот коды, которые я пробовал:

RewriteEngine on
RewriteRule ^page/@([a-zA-Z0-9]+)/$ index.php?page=page#$1 
RewriteRule ^page/@([a-zA-Z0-9]+)$ index.php?page=page#$1 
RewriteRule ^page@([a-zA-Z0-9]+)/$ index.php?page=page#$1
RewriteRule ^page@([a-zA-Z0-9]+)$ index.php?page=page#$1 


RewriteEngine on
RewriteRule ^page/@([a-zA-Z0-9]+)/$ index.php?page=page%23$1 
RewriteRule ^page/@([a-zA-Z0-9]+)$ index.php?page=page%23$1 
RewriteRule ^page@([a-zA-Z0-9]+)/$ index.php?page=page%23$1
RewriteRule ^page@([a-zA-Z0-9]+)$ index.php?page=page%23$1 


RewriteEngine on
RewriteRule ^page/@([a-zA-Z0-9]+)/$ index.php?page=page\#$1
RewriteRule ^page/@([a-zA-Z0-9]+)$ index.php?page=page\#$1 
RewriteRule ^page@([a-zA-Z0-9]+)/$ index.php?page=page\#$1
RewriteRule ^page@([a-zA-Z0-9]+)$ index.php?page=page\#$1 

Как позволить htaccess думать, что # это строка?

1 Ответ

0 голосов
/ 17 марта 2012

Информация за хеш-кодом не отправляется на сервер.Только браузер может обрабатывать эту информацию.Поэтому нет смысла пытаться сопоставить ваш URL так, как вы это сделали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...