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 :

[.htaccess] Redirection permanente pour les accès directs aux URL réécrites


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2003
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 171
    Par défaut [.htaccess] Redirection permanente pour les accès directs aux URL réécrites
    Bonjour,

    Je viens de passer en url rewriting qui est le suivant et qui marche bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^ma-page.html$ /index.php?m=2 [L]
    Je souhaite faire une redirection permanente 301 des anciennes pages vers les nouvelles, soit index.php?m=2 vers ma-page.html

    J'ai essayé avec RedirectPermanent, RedirectMatch permanent et RewriteCond + RewriteRule mais ça ne marche pas. Soit la redirection n'est pas prise en compte, soit ma-page.html n'est pas trouvée. Voici ce que j'ai testé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectPermanent /index.php?m=2 http://www.mon-site.com/ma-page.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectMatch permanent ^index.php?m=2$ http://www.mon-site.com/ma-page.html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{QUERY_STRING} ^m=2$
    RewriteRule ^index\.php$ /ma-page.html [R=301,L]
    Merci pour votre aide.

  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
    Pas possible directement comme ça, faut bidouiller. La problématique générale est de d'identifier quand les appels aux URL réécrites sont faits en directs ou suite à une réécriture. Il y a 2 versions possibles : une avec les variables d'environnement et une en utilisant un paramètre d'URL spécial. Va voir cette réponse.

  3. #3
    Membre confirmé
    Inscrit en
    Février 2003
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 171
    Par défaut
    Je n'obtiens pas le status 301 (vérifié avec web-sniffer.net) et l'adresse ne change pas dans la barre d'adresse.

  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
    Un peu de détails sur ce que tu as fait, peut-être ? Genre tout ton .htaccess et les URL que tu utilises pour tester;

  5. #5
    Membre confirmé
    Inscrit en
    Février 2003
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 171
    Par défaut
    Voici ce que j'ai mis dans le htaccess :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    RewriteCond %{QUERY_STRING} !internal_redirect=1
    RewriteCond %{QUERY_STRING} m=209
    RewriteRule /index.php /code-reduction.html [R=301,L]
    RewriteRule ^code-reduction.html$ /index.php?m=209&internal_redirect=1 [L]

  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
    Citation Envoyé par _Mac_ Voir le message
    Un peu de détails sur ce que tu as fait, peut-être ? Genre tout ton .htaccess et les URL que tu utilises pour tester;
    Indique aussi le résultat obtenu et attendu pour chaque URL.

  7. #7
    Membre confirmé
    Inscrit en
    Février 2003
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 171
    Par défaut
    Voici 2 URL : la nouvelle et l'ancienne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    http://www.un-max-de-concours.com/code-reduction.html
    http://www.un-max-de-concours.com/index.php?m=209

Discussions similaires

  1. [AC-2003] Interdire l'accès direct aux tables mais pas via les formulaires
    Par Aegnor dans le forum Sécurité
    Réponses: 2
    Dernier message: 27/09/2011, 10h22
  2. Réponses: 4
    Dernier message: 07/06/2008, 21h07
  3. Gérer l'acces direct aux tables suivant les utilisateurs
    Par kristof33 dans le forum Sécurité
    Réponses: 2
    Dernier message: 02/03/2007, 08h11
  4. htaccess : interdire l'accès direct aux fichiers php
    Par Cédricss dans le forum Apache
    Réponses: 5
    Dernier message: 08/10/2006, 11h29

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