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 :

[Apache] url rewrite


Sujet :

Apache

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut [Apache] url rewrite
    Bonjour,

    Je viens de consulter plusieurs pages sur le rewriting d'URL sous appache sans comprendre si le problème que je me pose peut trouver une solution.

    L'idée, pas très originale, consiste à remplacer les url du genre :

    www.monsite.com/script.php?var=tfdre&user=145&c=Voi&c=ARDE^tru£&h=gtfrt

    par quelque chose du genre :

    www.monsite.com/cable RJ45 cat 6 UTP

    Au fait, QUESTION 1, c'est possible d'avoir des espaces dans une URL ?

    Il est entendu qu'il n'existe aucune page html, ce sont les variables GET de l'URL qui créent cette page, avec en plus des variables de SESSION, et ces variables créent des variables dans les liens de la page...

    Bon, QUESTION 2, c'est possible ?

    Merci d'avance.

  2. #2
    Membre averti Avatar de sami_c
    Profil pro
    Chef de projet
    Inscrit en
    Mai 2002
    Messages
    749
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet

    Informations forums :
    Inscription : Mai 2002
    Messages : 749
    Points : 345
    Points
    345
    '...parfois l'informatique peut vous rendre fou...'

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Merci de ton adresse, ça m'a l'air bien intéressant, j'y travaille ce week-end.

  4. #4
    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
    Ce n'est pas possible d'avoir des espaces dans l'URL.
    En fait, ils sont remplacés par %20.
    Tu peux utiliser des underscrores _ (ou des tirets) à la place.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Merci de l'info

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    Je viens de passer un peu de temps sur le site de sami_c et celui d'Appache, et il y a un truc qui me trouble :

    La règle de réécriture peut-elle être dynamique, mais sans passer par les expressions régulières ?

    $tab = array ('Pomme' => 'A', 'Banane' => 'B');

    www.monsite.com/Pomme
    $valeur_a_remplacer = 'Pomme';
    $nouvelle_valeur = "script.php?var=$tab[$valeur_a_remplacer];

    Rewrite_rule
    www.monsite.com/Pomme
    www.monsite.com/$nouvelle_valeur

    Donc, construire la rewrite rule à la volée à partir d'un script PHP, c'est possible ?

    Merci d'avance.

  7. #7
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Si tu peux patienter quelques jours, je suis en train de finaliser un tutoriel qui traite exactement de ce sujet.
    Merci ^^

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    Merci de ta réponse.

    Je peux attendre quelques jours, car je suis en train de débarrasser mes URL de diverses variables GET d'environnement (que je passe en $_SESSION) afin de ne conserver en GET que les deux variables indispensables qui mènent à la page recherchée, ce qui me semble un bon préalable avant d'attaquer le rewrite.

    Merci d'avance de me donner l'adresse de ton tuto dès qu'il est prêt.

  9. #9
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    MERCI.

    Je vais voir demain, je te tiens au courant.

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Merci de ton tuto, très bien, je vais m'y mettre quand le nettoyage de mes URL sera terminé, ce qui bien sûr prend plus de temps que prévu.

    Je te tiens au courant.

  12. #12
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Y'a pas de souci, prends le temps qu'il te faut !

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    Très clair ton tuto, merci.

    QUESTION STRATÉGIQUE.
    J'ai bientôt terminé le nettoyage des URL qui passent de 5 à 2 variables GET.
    Avant rewriting, les nouvelles URL sont du genre :

    touslescables.com/a.php?a=A7AL^300P&c=Voi

    Puis-je installer ces URL sur le site avant d'avoir commencé le rewriting ?
    Je veux dire, si Google commence à indexer ces URL (avec les URL à 5 étages, pour l'instant il bloque sur la page d'accueil), est-ce qu'il réindexera les URL rewritées, ou est-ce que ça ne lui plaira pas du tout de trouver de nouvelles URL qui mènent aux mêmes pages déjà indexées ?

    J'espère que ma question est claire.

    Merci d'avance.

  14. #14
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Ça ne lui plaira pas du tout...
    Il faudra passer par un fichier de redirection HTTP utilisant la fonction header(). Le tuto est en préparation ^^
    Question de stratégie, je ne sais pas si c'est une bonne idée d'avoir des caractères aussi spéciaux dans l'URL. Si tu avais un identifiant numérique, ce serait mieux. Le nom des produits etc. n'est ajouté à l'URL que comme information. Dans mes exemples, tu peux changer l'URL à volonté tant que tu ne modifies pas les identifiants.

  15. #15
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Merci de ta réponse.

    Dans l'identifiant, le seul caractère bizarre est le ^ qui sert de séparateur et, justement, je peut le faire sauter au moment du rewriting.

    touslescables.com/a.php?a=A7AL^300P&c=Voi

    pourrait donner :

    touslescables.com/voir-vitrine/cable-RJ45-cat5-UTP-A7AL/droit-300P

    C'est affreux ?

  16. #16
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Dans le lien d'origine : puisque tu peux faire sauter le paramètre "a" sans que cela affecte ton application, à quoi sert ce paramètre ? Pourquoi ne pas simplement le virer ?
    Si tu examines les exemples de mon tuto, il n'y a aucun paramètre inutile à l'origine. C'est ma technique d'URLR qui s'occupe de chercher dans la BDD les mots clefs que nous pouvons ajouter.

  17. #17
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    Merci de ton intérêt.

    Je ne comprends pas bien ce que tu veux dite.

    touslescables.com/a.php?a=A7AL^300P&c=Voi

    Dans cet URL, il y a 2 variables GET indispensables :
    c = choix du type de lien dans la page.
    Sur la page, il y a les liens qui permettent d'afficher les produits, et bien sûr d'autres liens (FAQ, Forum, partenaires, promotions, etc.). Je suis obligé de savoir.
    a = infos pour effectuer la recherche dans la BD.

    Si tu vas sur touslescables.com (URL raccourcis non mises en place), tu comprendras peut-être mon problème.

    Sue la page d'accueil, le moteur doit suivre les liens des catégories qui mènent aux listes, puis sur les listes voir les liens qui mènent au produits et référencer l'URL qui affichera directement la page du produit.

    Il existe 10 modes de recherche possibles, mais seul ce mode de recherche doit intéresser les moteurs, et d'ailleurs j'aimerais que les moteurs ne référencent que ces recherches, sans doute un boulot à faire dans le fichier robots.txt qui d'ailleurs n'existe pas encore...

    Sur un site miroir de test :
    pharmimmo/mieux/cables/index.php

    Tu peux voir les URL en cours de raccourcissement, ce sera bientôt terminé, et je pourrais alors attaquer le rewriting.

    Merci de tes conseils.

  18. #18
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    J'ai raté quelque chose...
    Si ton paramètre "a" est indispensable, alors il est également inaliénable. Tu ne peux pas le modifier. En ce cas, tu ne peux pas changer les ^ en quoi que ce soit, à moins d'être certain de ne pas avoir besoin du caractère de remplacement.
    Il m'a semblé que tu parlais de réécrire ce paramètre, d'où mon étonnement.

  19. #19
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 671
    Points : 128
    Points
    128
    Par défaut
    Merci de ta réponse.

    Le ^ est juste une marque de séparation.

    Dans l'URL réécrite, la séparation est effectuée, pour une présentation plus jolie.

    Là, je ne ne vois pas où est le problème.

  20. #20
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Tout dépend de comment tu vas gérer les choses dans ton .htaccess...
    De mon point de vue, s'il y a une séparation, il y a deux options :
    • Soit le paramètre n'est pas "atomique" (tu pourrais le décomposer)
    • Soit il est atomique (et nécessaire), auquel cas le modifier serait un peu dangereux.

Discussions similaires

  1. [Apache] URL rewriting
    Par Mister Nono dans le forum Apache
    Réponses: 5
    Dernier message: 22/06/2006, 11h32
  2. [Apache] URL rewriting (bidouille)
    Par goldorax113 dans le forum Apache
    Réponses: 5
    Dernier message: 11/05/2006, 21h44
  3. [Apache] URL Rewriting et sous domaines
    Par goldorax113 dans le forum Apache
    Réponses: 6
    Dernier message: 10/05/2006, 09h50
  4. [Apache] URL REWRITING par le .htaccess
    Par d.w.d dans le forum Apache
    Réponses: 1
    Dernier message: 19/04/2006, 20h50
  5. [Apache] - URL Rewriting et consommation CPU
    Par Acti dans le forum Apache
    Réponses: 3
    Dernier message: 23/08/2005, 09h53

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