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 :

RewriteUrl


Sujet :

Apache

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 17
    Points : 13
    Points
    13
    Par défaut RewriteUrl
    Bonjour,
    Je travaille en ce moment sur la redirection avec le serveur Web avec l'urlrewriting. Mais si le serveur passe sur mes règles, il ne les interprète pas.

    Voici ce que je veus:
    Je pars de cette URL:
    http://www.google.fr/test/jaime-les-frite_toto321.htm
    Pour être redirigé vers celle-ci:
    http://www.google.fr/index.php?&toto=321

    Voici le code utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    RewriteEngine On
    RewriteRule ^(.+)/test/(.+)_toto([0-9]+)\.htm(.*) $1/index.php?toto=$3
    Voici ce que le serveur me retourne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    The requested URL /test/jaime-les-frite_toto260.htm was not found on this server.
    Merci d'avance pour votre aide

  2. #2
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Tu as oublié un $ à la fin et le $1 ne sert a rien pour ce que tu veux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine On
    RewriteRule ^test/(.+)_toto([0-9]+)\.htm$ index.php?toto=$2
    Mais attention aussi aux répertoires virtuels!

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Merci pour ton aide mais ton pattern n'a pas l'air de fonctionner, par contre ta remarque sur les répertoires virtuels m'intéresse. Pourrais tu m'en dire plus sur les risques des répertoires virtuels?

    Encore merci

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Bon en fait, il y avait un détail que je n'avais pas pigé, c'est que le nom de domaine n'est pas compris dans les règles de nommage. D'où le problème.
    exemple:
    Pour moi on partait de http://www.google.fr/test/jaime-les-frite_toto1.htm or pour les règles de nommage, on part après le nom de domaine, donc /test/jaime-les-frite_toto1.htm

    Ceci ne fonctionne pas

    RewriteRule ^(.+)/test/(.+)_toto([0-9]+)\.htm$

    Ceci fonctionne

    ^/test/(.+)_toto([0-9]+)\.htm$


    Merci à ceux qui m'ont guidé

  5. #5
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Oui, chez certains hebergeurs, il faut rajouter un / devant.
    En ce qui concerne les repertoires virtuelles, ta règle suppose que le repertoire test existe alors que ce n'est pas le cas réellement.
    Ta page index.php redirigée sera connue comme étant dans le répertoire "test". Et pour pallier à cela, j'utilise la balise base (dans le head)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <base href="http://www.monDomaine.com/repertoire/" />
    En incluant cette balise, tous les liens relatifs se font par rapport à l'adresse indiquée.
    Exemple, lorsque tu as une image

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="monImage.jpg" />
    Cela pointera implicitement vers -http://www.monDomaine.com/repertoire/monImage.jpg.

    J'espère t'avoir un peu éclairé.

    Bye.

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Merci beaucoup Leena, pour le répertoire virtuel, je n'ai aucun problème avec les exemples que j'ai affiché.

    ENcore merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. RewriteUrl retourne vers une page 404 ?
    Par stefde3 dans le forum Apache
    Réponses: 2
    Dernier message: 28/01/2014, 14h14

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