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] Règle de redirection ?


Sujet :

Apache

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut [URL Rewriting] Règle de redirection ?
    Bonjour,

    Je ne suis pas très au point avec l'url rewriting, et dès que ça sort des règles de base, je suis pommé...

    Voici ce que j'aimerais faire, pourriez-vous m'indiquer la syntaxe appropriée ?

    J'aimerais faire, avec l'url rewiring, une redirection visible d'une page vers une autre.

    Disons que je veuille rediriger la page http://www.domaine.com/v1/index.php vers http://www.domaine.com/v2/index.html par exemple...

    D'avance merci pour votre aide

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    La réécriture est-elle vraiment nécessaire ? Une simple règle introduite par une directive Redirect ne serait-elle pas suffisante ?

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Peut-être Quelle serait la syntaxe ? (car je ne maitrise pas non plus)

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Ça dépend du type de la redirection : Redirect, RedirectMatch (redirection par masque, donc de plusieurs URL), RedirectPermanent, RedirectTemp

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Ok, mais est-ce que c'est de trop de demander une aide personnalisée ?

    J'ai essayé un tas de syntaxes grâce aux liens explicatifs que tu m'as donné, et je suis parvenu à que dalle. Déjà dans le passé, j'ai appris le html et le php uniquement avec des exemples. Si personne ne me donne d'exemple précis, je n'arriverai à rien

    Disons que je veuille rediriger la page http://www.domaine.com/v1/index.php vers http://www.domaine.com/v2/index.html par exemple..., ça donnera quoi ?

    Merci d'avance.

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Ceci suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectPermanent /v1/index.php /v2/index.html
    (l'usage dans un fichier .htaccess requiert AllowOverride à FileInfo)

    Mais si vous souhaitez être corrigé il faudrait nous donner vos essais

  7. #7
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Merci, j'ai fait un test.

    Dans le .htaccess à la racine de mon ftp j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectPermanent /fr/tv.php /fr/index.php
    Depuis, tout mon site est indisponible avec l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.
     
    Please contact the server administrator, tech@ovh.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.
     
    More information about this error may be available in the server error log.
     
    Apache/1.3.39 Server at www.entraidescolaire.com Port 80
    Comment y remédier ?

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Mettez l'URL complète pour le deuxième paramètre plutôt que le chemin (les versions 1.3 n'apprécient pas en effet).

  9. #9
    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
    Points : 12 977
    Points
    12 977
    Par défaut
    Si vous avez accès aux logs d'Apache, qu'y a-t-il dedans ? Avez-vous vérifié que le fichier httpd.conf contenait au moins AllowOverride FileInfo pour autoriser l'utilisation des fichiers .htaccess ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  10. #10
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Ok, merci beaucoup, ça fonctionne

    Autre question, toujours sur le même thème :

    J'ai un dossier nommé /fr/
    J'aimerais faire en sorte que derrière /fr/, le nom du fichier index.php soit toujours écrit s'il s'agit de la page d'index.

    En gros, je pense qu'il s'agirait de rediriger http://www.domaine.com/fr/ vers http://www.domaine.com/fr/index.php ?

    Comment pourrait-on procéder dans ce cas ?

    Merci par avance

  11. #11
    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
    Points : 12 977
    Points
    12 977
    Par défaut
    Y a peut-être plus simple, mais on peut utiliser la réécriture d'URL. Dans le .htaccess se trouvant à la racine du site :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    RewriteEngine on
    # L'URI se termine par / ?
    RewriteCond %{REQUEST_URI} /$
    RewriteRule ^(.*)$ $1index.php [R,L]

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  12. #12
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Euh, merci mais ton exemple ne fonctionne pas

  13. #13
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Ceci doit fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine on
    RewriteCond %{REQUEST_URI} /$
    RewriteRule .* %{REQUEST_URI}index.php [R,L]
    Ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectMatch (.*/)$ $1index.php

  14. #14
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Merci beaucoup

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

Discussions similaires

  1. [URL Rewriting] Règles partiellement fonctionnelles
    Par kangaxx dans le forum Apache
    Réponses: 6
    Dernier message: 30/03/2008, 18h53
  2. Réponses: 12
    Dernier message: 26/03/2008, 20h00
  3. [URL Rewriting] Règle non prise en compte
    Par blanchonvincent dans le forum Apache
    Réponses: 8
    Dernier message: 03/03/2008, 08h54
  4. Réponses: 2
    Dernier message: 27/02/2008, 15h49
  5. [URL Rewriting] règles quasi-identiques
    Par nicerico dans le forum Apache
    Réponses: 3
    Dernier message: 17/11/2007, 19h25

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