IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Url Rewriting et www.monsite.com#p1=2


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 152
    Par défaut Url Rewriting et www.monsite.com#p1=2
    Bonjour à tous,


    Je cherche le moyen de transformer

    www.monsite.com/index.php#p1=3

    en

    www.monsite.com/index.php?p1=3

    J'ai donc pensé à Url Rewriting !


    Quand l'utilisateur tappe www.monsite.com/index.php#p1=3 ou via ses favoris ou un lien, je désire le dévier sur www.monsite.com/index.php?p1=3. Mais uniquement si après le # il y a =


    Ou encore mieux

    www.monsite.com/index.php?p1=2#p2=3&p3=4

    en

    www.monsite.com/index.php?p1=2&p2=3&p3=4



    Est-ce possible ?


    Merci,

    Vodnok,

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Non, ce n'est pas possible car tout le caractère # et ce qui suit n'est jamais envoyé par le navigateur au serveur : il s'agit d'une navigation interne à la page qui ne nécessite aucun appel supplémentaire au serveur. Donc si tu veux transformer les #... en ?... il faut agir dans le code de la page où tenter une bidouille en JavaScript, l'URL rewriting ne te servira à rien ici.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 152
    Par défaut
    Et si je fais

    www.monsite .com/index.php?p1=2#redir#p2=3&p3=4.html



    Il n'y a pas une règle qui permet si #redir# existe de faire

    www.monsite .com/index.php?p1=2 + &p2=3&p3=4

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Non, c'est le navigateur qui décide comment il interpréter ce qui suit le # et de toute façon, il n'enverra pas le # et ce qui suit au serveur. Désolé.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 152
    Par défaut
    Je me demande comment yahoo fait pour avoir ça :

    http://maps.yahoo.com/beta/#mvt=m&la....687378&zoom=9

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    C'est un traitement en JavaScript. Je vais te montrer ce qu'envoie Firefox au serveur pour l'URL que tu donnes :
    Code LiveHTTPHeaders : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    http://maps.yahoo.com/beta/#mvt=m&lat=41.861379&lon=-87.687378&zoom=9
    
    GET /beta/ HTTP/1.1
    Host: maps.yahoo.com
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.17) Gecko/20080829 Firefox/2.0.0.17
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: en,en-us;q=0.7,fr;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Proxy-Connection: keep-alive
    Cookie: adx=c13453@1222504150@1.c13020@1222512801@1.c13015@1223971036@1; s_vsn_yahoogroupsygprod_1=1406204447252; B=cqsr9md4b82r2&b=3&s=1c; _yms=v^1; HP=1
    Pragma: no-cache
    Cache-Control: no-cache
    
    HTTP/1.x 200 OK
    Transfer-Encoding: chunked
    Date: Thu, 06 Nov 2008 13:00:12 GMT
    Content-Type: text/html; charset=utf-8
    Cache-Control: private
    P3P: policyref="http://p3p.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"
    Vary: Cookie
    Last-Modified: Thu, 25 Sep 2008 16:57:58 GMT
    Set-Cookie: _yms=v%5E1; expires=Sat, 06-Dec-2008 13:00:12 GMT; path=/
    Content-Encoding: gzip
    Tu vois bien (ligne en gras) que Firefox n'envoie pas le # et ce qui suit. Si ce qu'il y a après est pris en compte d'une façon quelconque c'est par JavaScript : avec un location.href, tu dois récupérer toutes l'URL y compris le # et la suite, et donc tu peux analyser la chaîne mvt=m&lat=41.861379&lon=-87.687378&zoom=9, quitte même à envoyer telle quelle ces paramètres au serveur dans une URL classique sans #.

Discussions similaires

  1. Liens ne fonctionnent pas avec monsite.com mais avec www.monsite.com
    Par mickey83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 24/04/2010, 10h06
  2. Réponses: 4
    Dernier message: 10/02/2009, 15h05
  3. Réponses: 2
    Dernier message: 19/07/2008, 22h42
  4. Réponses: 4
    Dernier message: 16/05/2008, 01h04
  5. [RegEx] Récupérer les URL de type www.site.com/page.php?r=5#856
    Par brunoperel dans le forum Langage
    Réponses: 1
    Dernier message: 15/09/2007, 13h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo