Forum général.général Apache, mode rewrite et htaccess

Posté par  .
Étiquettes : aucune
0
5
mai
2005
bonjour.

dsl de ne pas posté dans le bon forum, mais j'ai pas trouve de topic special conf d'apache.
je vous decris maintenant mon pbl.


je travaille sur un serveur apache, avec certain mode rewrite configuré pour chaque virtualhost.

tout fonctionne bien.
cependant, je voudrait me creer le meme site, mais pour le dev, donc le placer dans mon public_html, et en meme temps ajouter ces regles a mon cvs.
c.a.d que je voudrait pouvoir changer ces regles, sans appeler l'hebergeur.

J'ai donc lu qu'on pouvais installer des regles rewrite dans un fichier .htaccess, dans le repertoire du site web.

je l'ai créé, mais les regles ne semblent pas s'appliquer.

pour verifier que mon fichier .htaccess etait bien interprété par apache, j'ai mis des regle de AuthUserFile, AuthType et tout.
ca fonctionne, a savoir que le navigateur me demande bien un mot de passe avant e me delivrer le contenu du site.

Je me suis donc dit que le .htaccess etait bien lu par apache, et executé.

Je précise que le site web ou je veux ajouter mes regle est dans mon public_html.
j'ai donc fait ajouter par mon hebergeur, ds les regles d'apache la ligne suivante.

<Directory /home/thomas/public_html>
AllowOverride All



Question.
ai-je oublie une option a la conf d'apache, ou a mon fichier .htaccess pour que ces regles soient appliquée

Précision.
J'ai utilise les regles de rewrite qui etait utilisée dans mon site web principale, elles sont donc bonnes.

message d'apache.
[Wed May 4 11:00:04 2005] [error] [client 82.120.77.161] File does not exist: /home/thomas/public_html/anakrome_dev/11.html

regles.
RewriteEngine On
RewriteRule \
^/([0-9]*),?([0-9]*),?([0-9]*),?([0-9]*),?([a-z]{2}_[A-Z]{2})*,?p?([0-9]*).html \
/index.php?a=$1&id_reportage=$2&id_dossier=$3&id_photo=$4&set_language=$5&page=$6 [L]


voila, dsl d'avoir ete si long, et si vous avez une idee, je suis preneur.
bonne journée.

Thomas
  • # Vérifications

    Posté par  (site web personnel) . Évalué à 3.

    Coucou,
    juste pour vérifier,
    . est ce que tu es sûr que ta rêgle est bien correcte ? (^/tonuser/([0-9]... au lieu de ^/([0-9]... par exemple)
    . est ce qu'il n'y a pas un problème de précédence ? (Une rêgle sur un virtual host de plus haut niveau qui rendrait inutilisable ta rêgle locale ?)

    Sinon, si effectivement les .htaccess sont autorisés et que tu peux outre-passer n'importe quoi (AllowOverride All) je ne vois pas trop ce que tu pourrais ajouter en plus. En même temps, il y a toujours le risque de précédence ou d'imbrication qui peut engendrer des résultats bizarres ...
    • [^] # Re: Vérifications

      Posté par  . Évalué à 2.

      tu avais bien raison.
      ma regle etait correcte, mais pour un site installé a la racine.

      j'ai modifie en

      RewriteRule \
      ^([0-9]*),?([0-9]*),?([0-9]*),?([0-9]*),?([a-z]{2}_[A-Z]{2})*,?p?([0-9]*).html \
      /~thomas/anakrome_dev/index.php?a=$1&id_reportage=$2&id_dossier=$3&id_photo=$4&set_language=$5&page=$6 [L]


      en fait, d'apres ce que j'ai compris, la regexp pour identifier les variables peut etre n'importe ou, mais la transformation via le mode rewrite doit specifier la repertoire de destination

      mùerci de ton coup de main, j'etais la dessus depuis quelques temps.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.