Distinguer répertoires virtuels et réels

Discussion dans 'URL Rewriting et .htaccess' créé par ALkyD, 17 Décembre 2006.

  1. ALkyD
    ALkyD Nouveau WRInaute
    Inscrit:
    6 Novembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Bonjour,

    Je me suis créé un système de répertoires virtuels dans mon .htaccess avec le RewriteRule suivant :
    http://www.toto.com/truc/ vers rubrique.php?rep=truc

    Enfin bref, tout marche jusqu'ici. Le problème, c'est à propos des répertoires réels. Si je fais http://www.toto.com/fichiers/ (ou 'fichiers/' est un répertoire réel), Apache le prend comme un répertoire virtuel et du coup, j'atterris sur la page rubrique.php?rep=fichiers.

    Comment faire en sorte qu'Apache puisse distinguer les répertoires virtuels des répertoires réels, donc ne rediriger que ceux qui sont fictifs vers rubrique.php?rep=xxx et accéder normalement à ceux qui sont réels, sans toucher à l'URL rewriting ?

    Merci par avance.
     
  2. Fab le Fou
    Fab le Fou WRInaute passionné
    Inscrit:
    2 Décembre 2004
    Messages:
    1 109
    J'aime reçus:
    0
    Il te faut utiliser un modèle commun pour tes répertoires virtuels de manières à les distinguer des autres, par exemple : -http://www.example.com/r-truc/ , -http://www.example.com/r-truc2/, etc
     
  3. ALkyD
    ALkyD Nouveau WRInaute
    Inscrit:
    6 Novembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Et ensuite ? Comment Apache fait la différence en suivant ton idée ? N'y a-t-il pas un RewriteCond à placer avant ?
     
  4. hebmaster
    hebmaster WRInaute impliqué
    Inscrit:
    22 Décembre 2005
    Messages:
    918
    J'aime reçus:
    0
    il n'y a rien a ajouter a part le r- dans ton htaccess...

    donne moi ton code et je te montrerai comment faire
     
  5. ALkyD
    ALkyD Nouveau WRInaute
    Inscrit:
    6 Novembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Le voilà :

    Code:
    RewriteRule ^([a-zA-Z0-9_]+)/$ rubrique.php?r_rewrite=$1 [L,QSA]
    Ce n'est donc pas possible qu'Apache fasse la différence entre répertoire réel et virtuel sans suivre une charte de nommage pour les noms des dossiers (comme r_ au début des dossiers virtuels) ? C'est quand même sacrément ennuyeux, car si c'est réellement le cas, ça m'oblige à renommer tous mes répertoires virtuels (une quarantaine)... :(
     
  6. Fab le Fou
    Fab le Fou WRInaute passionné
    Inscrit:
    2 Décembre 2004
    Messages:
    1 109
    J'aime reçus:
    0
    Une autre astuce que tu peux utiliser c'est que pour tes répertoires réels tu remplaces les liens pointant vers la racine par des liens pointant vers index.php.

    Là du coup, ta règle de réécriture ne s'appliquera pas.
     
  7. Serious
    Serious WRInaute passionné
    Inscrit:
    21 Novembre 2005
    Messages:
    1 834
    J'aime reçus:
    0
    Si. Il y a un test pour ca, je ne me souviens plus lequel mais il existe. Regarde la doc de RewriteCond.
     
  8. jeanluc
    jeanluc WRInaute accro
    Inscrit:
    3 Mai 2004
    Messages:
    2 875
    J'aime reçus:
    0
    Je n'ai pas testé, mais il me semble que tu devrais pouvoir résoudre le problème avec quelque chose comme ceci:
    Code:
    RewriteRule ^repertoire_reel1\/  -  [L]
    RewriteRule ^repertoire_reel2\/  -  [L]
    RewriteRule ^repertoire_reel3\/  -  [L]
    RewriteRule ^([a-zA-Z0-9_]+)/$ rubrique.php?r_rewrite=$1 [L,QSA]
    Jean-Luc
     
  9. ALkyD
    ALkyD Nouveau WRInaute
    Inscrit:
    6 Novembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Ca marche pour des répertoires prédéfinis. Mais si j'ai 50 répertoires réels, ca m'oblige à écrire 50 règles...
    Je vais regarder la doc de RewriteCond...
     
  10. epsimaster
    epsimaster Nouveau WRInaute
    Inscrit:
    31 Décembre 2006
    Messages:
    3
    J'aime reçus:
    0
    Bonjour, et bonne année,

    Si je me suis inscrit à ce forum c'est avant tout pour répondre à ta question.
    Personnellement j'utilise les lignes suivantes :
    Code:
    # Si le fichier existe, ne pas faire la redirection
    RewriteCond %{REQUEST_FILENAME} !-f
    
    # Si le répertoire existe, ne pas faire la redirection
    RewriteCond %{REQUEST_FILENAME} !-d
    
    Le .htaccess vérifiera donc la présence "physique" des répertoires et fichiers demandés en lien ou dans la barre d'adresse. S'il existe, pas de redirection.

    J'espère t'avoir aidé.

    P.S. : Un [Résolu] et c'est réglé.
     
Chargement...
Similar Threads - Distinguer répertoires virtuels Forum Date
Distinguer le trafic Google News dans Analytics Débuter en référencement 21 Novembre 2018
► Une façon bien originale de se distinguer... ส็็็็็็็็ Référencement Google 5 Mai 2012
Distinguer l'internaute du GoogleBot Référencement Google 17 Décembre 2011
Comment distinguer les robots des visiteurs ? Développement d'un site Web ou d'une appli mobile 24 Avril 2008
Distinguer un robot d'un utilisateur Développement d'un site Web ou d'une appli mobile 28 Décembre 2006
Distinguer un lien http:// dans une variable Développement d'un site Web ou d'une appli mobile 8 Juin 2006
quel outil permet de distinguer entre nouveaux et anciens? Problèmes de référencement spécifiques à vos sites 18 Septembre 2004
un nom de domaine + répertoires par pays-langue cibles? Référencement international (langues, pays) 9 Février 2021
WordPress Conseil sur la bonne structure des URL en répertoires Problèmes de référencement spécifiques à vos sites 19 Août 2020
Domaine racine et sous répertoires Référencement international (langues, pays) 22 Avril 2020
Création d'une vue Google Analytics sans sous-répertoires Google Analytics 5 Mars 2020
Francophonie, alias ccTLD vers sous-répertoires dupliqués d'un .com Référencement international (langues, pays) 9 Juin 2018
Sous-domaines ou répertoires pour un gros site multilingue sur un .com ? Référencement international (langues, pays) 23 Février 2018
Passer plusieurs sous-domaine en 301 vers répertoires Débuter en référencement 18 Juillet 2017
Fil d'ariane et page dans des répertoires Débuter en référencement 25 Novembre 2016
Des sous domaines ou des repertoires pour un site multilangue ? Débuter en référencement 25 Novembre 2016
Site multilingue : pas de .com mais un .fr et des répertoires langues Référencement international (langues, pays) 25 Janvier 2016
Duplicata de pages sur différents répertoires de langues Référencement international (langues, pays) 4 Février 2015
SEO : structure et répertoires Problèmes de référencement spécifiques à vos sites 24 Août 2014
Organisation des URL avec répertoires et SEO Débuter en référencement 18 Juillet 2014