Não é possível. As âncoras não fazem parte do URI ou Query String, então elas não são enviadas para o Apache.
Eu tenho alguns URIs que foram publicados ou compartilhados e que agora preciso redirecionar. Os URLs antigos assumem a forma:
link e eu quero redirecioná-los para link
Eu tentei o seguinte em um arquivo .htaccess (Apache 2.2)
redirect 301 /#!story/45 /#!story/name-of-the-story
OR
RewriteCond %{REQUEST_URI} ^(.*)#!story/45(.*)$
RewriteRule ^(.*)$ /#!story/name-of-the-story [R=301]
Mas isso não redireciona o URL (ele simplesmente não tem efeito). A sintaxe! # É gerada por uma biblioteca que estamos usando chamada prettyPhoto que grava o hash de localização do javascript:
location.hash = decodeURI('!' + theRel + '/'+story_slug+'/');
Alguém pode explicar por que isso não funcionaria ou sugerir uma maneira de contornar isso? Eu tenho o mod_rewrite ativado.