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 :

redirection d'url 301


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2009
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2009
    Messages : 125
    Par défaut redirection d'url 301
    Bonjour à tous,

    je me galère depuis hier pour trouver la solution et ça commence à me saouler...

    Je vous explique : auparavant, j'utilisais wordpress comme CMS et puis pour des raisons pratiques, j'ai changé pour joomla que je connais un peu mieux.

    malheureusement, les url sont différentes et je dois donc les rediriger de manière permanente.

    Dans mon fichier apache, j'ai essayé quelques trucs mais impossible...

    Bon, la piste du php aurait été la plus simple à mettre en place. Peut être pas très clean mais simple... J'ai tenté d'incorporer le code dans l'index.php de joomla, à la racine du site :


    Code : 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
    <?php
    if (isset($_SERVER['QUERY_STRING'])&&($_SERVER['QUERY_STRING']!='')){
    	$query=$_SERVER['QUERY_STRING'];
    	switch ($query){
    		case "p=598": //ancienne adresse wordpress
    			$dev="ma/nouvelle/adresse"; //nouvelle adresse joomla
    			break;
    		case "p=599":
    			$dev="ma/nouvelle/adresse2";
    			break;
    	}
    }
    header('Location: '.'http://www.monsite.fr/'.$dev); //Redirection HTTP avec nom de site
    header('HTTP/1.1 301 Moved Permanently');
    header('Status: 301 Moved Permanently');
     
    ?>
    mais, ça me met : erreur 310, trop de redirections...
    donc cette piste est à abandonner je pense...

    ensuite j'ai essayé, sans grande conviction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Redirect permanent /?p=598 http://monsite.fr/section/categorie/article
    mais comme à priori, apache ne gère pas les variables passées dans l'url, j'étais sûr à 99% du résultat...

    et là j'ai tenté d'améliorer un peu la réécriture d'url, mais c'est pas trop mon truc apache... si un pro pouvait venir à ma rescousse... je ne dois plus être très loin... :

    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <IfModule mod_rewrite.c>
      	Options +FollowSymlinks
      	RewriteEngine on
       	RewriteCond %{QUERY_STRING} ^p=598$
    	RewriteRule ^index.php$ index.php/tableaux-de-bord [R=301,L]   
    </IfModule>
    D'avance merci à vous,

    A bientôt,

  2. #2
    Membre très actif
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2009
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2009
    Messages : 125
    Par défaut
    il y a du mieux, voici ce que j'ai désormais :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine on
    RewriteCond %{QUERY_STRING} ^p=6$
    RewriteRule ^(.*)$ http://monsite.fr/index.php/blog/section/categorie/article [R=301,L]
    </IfModule>
    Ca marche presque... encore une fois, le truc tourne en boucle car le paramètre p=6 reste dans l'url... du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://monsite.fr/index.php/blog/section/categorie/article?p=6
    j'aimerai le supprimer... j'ai bien tenté avec le drapeau [QSD] mais rien à faire, la version d'apache du serveur mutualisé sur lequel est mon site est 2.2.21 alors que la balise [QSD] n'est opérationnelle qu'à partir de la version 2.4.... pas de bol quoi....

    Auriez vous une piste pour m'aider ?

    D'avance merci pour votre aide...

  3. #3
    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
    Il faut ajouter un ? à la fin de ton URL de redirection pour pas qu'Apache ajoute la query string initiale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^(.*)$ http://monsite.fr/index.php/blog/section/categorie/article? [R=301,L]

  4. #4
    Membre très actif
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2009
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2009
    Messages : 125
    Par défaut
    aaaaaahhhhhhhhh ! j'ai trouvé !

    Bon, je mets la solution, au cas où... ça pourrait servir un jour à quelqu'un d'autre.... une journée pour un put$^* de ?

    voilà le code final :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine on
    RewriteCond %{QUERY_STRING} ^p=6$
    RewriteRule ^(.*)$ http://monsite.fr/index.php/blog/section/categorie/article? [R=301,L]
    </IfModule>

  5. #5
    Membre très actif
    Profil pro
    Webmaster
    Inscrit en
    Octobre 2009
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2009
    Messages : 125
    Par défaut
    Edit ! A 2 minutes près ;-D Bon merci pour la réponse tout de même ! c'est arrivé en même temps !!!

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

Discussions similaires

  1. Htaccess 301 Redirect et URL Rewriting en simultané
    Par Valenten dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 04/07/2012, 14h59
  2. Script: créer un rép. virtuel pour une redirection d'URL
    Par GentooGeek dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 06/10/2006, 18h08
  3. Redirection d'URL avec .htaccess
    Par Mister Nono dans le forum Apache
    Réponses: 5
    Dernier message: 27/07/2006, 08h56
  4. [redirection d'URL] incompatibilité de IE
    Par King Ghidorah dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 04/11/2005, 23h41
  5. [ Débutant ][ JSP ]Redirection d'URL
    Par leminipouce dans le forum Servlets/JSP
    Réponses: 18
    Dernier message: 23/11/2004, 11h32

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