[résolu] Forcer /repertoire, interdire /repertoire/index.php

Discussion dans 'URL Rewriting et .htaccess' créé par YSonic, 2 Novembre 2006.

  1. YSonic

    YSonic WRInaute occasionnel

    Inscrit:
    27 Janvier 2004
    Messages:
    480
    J'aime reçus:
    0
    Bonsoir,

    je suis en train de terminer un site pour lequel de nombreuses urls sont du genre www.example.com/repertoire/ or, je veux éviter qu'on puisse y accéder via www.example.com/repertoire/index.php, il faut donc que je fasse des redirection pour toutes les urls en index.php vers leur répertoire d'origine, mais si je fais ça "classiquement" comme une bête redirection, je vais créer une boucle infinie. :)

    Le peu de solution que j'ai trouvé via notre ami GG ne m'a pas aidé, et sur le forum, malgré des guillemets, je ne peux pas avoir de résultat précis pour "redirection" et "index.php", donc tout sujet comportant php ou index est pris en compte... :roll:

    Je suppose que c'est très simple mais je ne suis pas très callé en .htaccess, merci de votre aide. ;)
     
  2. Leonick

    Leonick WRInaute accro

    Inscrit:
    8 Août 2004
    Messages:
    22 709
    J'aime reçus:
    0
    il n'y a qu'à changer le nom du script par défaut dans le htaccess
    Code:
    DirectoryIndex  default
    et ensuite la redirection avec apache fonctionnera sans problème :wink:
     
  3. bucheron

    bucheron WRInaute discret

    Inscrit:
    16 Juin 2006
    Messages:
    131
    J'aime reçus:
    0
    peux tu expliquer pourquoi ??
    et donner le code du fichier htaccess complet ?

    merci
     
  4. Leonick

    Leonick WRInaute accro

    Inscrit:
    8 Août 2004
    Messages:
    22 709
    J'aime reçus:
    0
    dans le htaccess du répertoire /repertoire
    Code:
    DirectoryIndex default
    RewriteEngine on
    RewriteRule index /repertoire
    et là, si on tape /repertoire/index.php ou html, il va faire la réécriture à la racine de ce répertoire, c'est à dire sur default.php ou ce que tu veux.
    Si on avait laissé index par défaut, ça bouclerait sans fin index renverrait sur index qui renverrait...
     
  5. YSonic

    YSonic WRInaute occasionnel

    Inscrit:
    27 Janvier 2004
    Messages:
    480
    J'aime reçus:
    0
    Ca fonctionne bien, mais du coup l'url du dossier affiche son contenu et non plus la page d'index... :p

    Il faut que l'affichage de /repertoire/index.php soit possible, mais seulement via l'url /repertoire/ et non /repertoire/index.php
     
  6. Leonick

    Leonick WRInaute accro

    Inscrit:
    8 Août 2004
    Messages:
    22 709
    J'aime reçus:
    0
    Il devrait afficher le contenu de l'ancien index.php qui aura du être renommé default.php
    sinon ajouter
    Code:
    IndexIgnore *
    dans le htaccess
     
  7. YSonic

    YSonic WRInaute occasionnel

    Inscrit:
    27 Janvier 2004
    Messages:
    480
    J'aime reçus:
    0
    Je suis un gland. :D

    edit: en effet, je suis vraiment bête sur ce coup... Merci pour l'astuce!