2010-01-02 19 views
3

Comment puis-je supprimer le signe dièse (#) de l'URL de la page? J'utilise le plugin SWFAddress (jQuery) pour des liens profonds.Réécriture d'URL - suppression du hachage

J'ai besoin de remplacer ce

localhost/site/# Blog

par

localhost/site/blog

(Oui, #blog est juste une ancre).

url rewriting D'une certaine façon .htaccess ne fonctionne pas

RewriteRule/blog #blog [L]

Toutes les suggestions?

Répondre

11

Le bit avec le hachage dans l'URL n'est pas envoyé au serveur lors de la demande d'une page, vous ne pouvez donc pas utiliser de règles de redirection de ce type. C'est côté client seulement.

10

Comme le fragment d'URL n'est pas transmis au serveur, vous ne pouvez utiliser qu'une solution côté client. Voilà un avec JavaScript:

if (location.href.indexOf("#") > -1) { 
    location.assign(location.href.replace(/\/?#/, "/")); 
} 

Ceci vérifie simplement s'il y a un # dans l'URL et remplace la première occurrence avec /. Donc /site/#blog obtiendrait /site/blog.

+1

Mais c'est complètement différent .. Ce n'est pas seulement une manière différente d'écrire l'url. –

+0

^semble être une bonne alternative? –