Вопрос по htaccess

php htaccess

У меня есть замена:
RewriteRule ^@([-a-zA-Z0-9._]+) /profile.php?name=$1 [NC]
ну тоесть ссылку http://site/@user воспримет как http://site/profile.php?name=user
Но как мне сделать так, что бы если ссылка вида http://site/@user/post/date_of_the_post воспринимало как http://site/post.php?author=user&date=date_of_the_post?????
Пытался делать так:
RewriteRule ^@([-a-zA-Z0-9._])/post/([0-9]+) /post.php?&author=$1&date=$2 [NC]
Но оно не воспринимает, работает как: http://site/profile.php?name=user/post/date_of_the_post

Примечание:
А еще если это возможно, то предидущий вопрос отпадет - можно ли сделать так:
чтобы http://site/@user равнялось http://site/profile.php?name=user (оно уже сделано).
а http://site/@user#postid равнялось http://site/post.php?author=user&date=postid
???????

Примечание:
Вобщем сделал я так:
RewriteRule ^@([^/]+)#([-0-9.]*)$ /post.php?author=$1&date=$2 [NC] (Как Вы написали)
и оно не сработало, но когда сделал:
RewriteRule ^@([^/]+)/post/([-0-9.]*)$ /post.php?author=$1&date=$2 [NC] (Тоесть заменил # на /post/)
оно сработало.

Я так понимаю это дело не в выражении, а в том что браузер не воспринимает # как часть адреса, и его невозможно заменить?
Ответы:
RewriteRule ^@([^/]+)$ /profile.php?name=$1 [NC]
После # идет т. н. "якорь". Изначально он нужен только для браузера, так что он может и не передаваться в rewrite. Зависит от реализации в конкретном вебсервере.


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.