Version complète: sur le forum Webmaster Hub : htacces rewrite
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
Baby
Hello tout le monde!

J'ai consulté un dossier sur ce sie à propos des url réecrites à la volée et j'ai une "C......" dans le paté!

Alors, j'vous explique smile.gif
J'ai un fichier, admettons index.php à la racine du site, sur ce dernier, des liens pointent vers des photos. Les photos sont dans le dossier
images/1

et la page contenant l'image
images/1/1.php

voilà ce que j'ai dans le htaccess situé à la racine du site
Options +FollowSymlinks
RewriteEngine on
RewriteRule images/([0-9]+)/([0-9]+)\.php$ photo.php?num=$1&id=$2 [L]
options -indexes

Bon enfin ça marche pas soit j'ai des erreurs 404 soit ça affiche rien (le rewrite est activé), et je comprends pas pourquoi alors si une ame charitable voulait bien m'expliquer je lui en serai éternellement reconnaissante, ça fait 3 heures que j'y suis je vais péter un plomb yuk.gif

Merci d'avance.

Kelly

<edit Arlette : On va éviter les mots crus wink.gif >
Dan
Salut Baby, et bienvenue à bord du Hub !

En fait, ta règle de réécriture fait croire au navigateur qu'on est dans un répertoire différent de celui dans lequel on se trouve. On demande /images/1/ et on est renvoyé à / wink.gif

De ce fait, tous les liens relatifs ne fonctionneront plus dans ton programme photo.php
Deux solutions se présentent:
- soit tu utilises des liens absolus dans ce programme
- soit tu utilises la balise <base href="...."> qui permettra d'avoir à nouveau des liens relatifs opérationnels.

Cordialement,

Dan
Baby
Merci Dan! et désolée pour le mot cru Arlette wink.gif.
Ben j'ai déjà essayé les deux méthodes que tu m'as dites mais ça ne marche pas non plus, donc bon, je vais essayer autre chose je pense j'en ai marre de me prendre la tête.
Merci encore l_angel.gif
Dan
Salut Baby,

J'ai un peu de mal à comprendre ce que tu veux faire. Et je pense que tu abordes la réécriture d'URL par le mauvais côté wink.gif

Si tu as effectivement bien un fichier php nommé image/1/1.php , pour quelle raison veux-tu réécrire l'URL ?

J'imagine que ton programme photo.php est situé à la racine du site et est celui qui se charge de l'affichage des pages ...

Dans ce cas, une règle telle que:
CODE
RewriteRule images-([0-9]+)-([0-9]+)\.html photo.php?num=$1&id=$2 [L]
te permettrait d'avoir des URLs de la forme: images-12-34.html qui seraient redirigées en interne vers photo.php?num=12&id=34

Les liens seraient plus facilement indexables et ont toutes les apparences de "simples" fichiers html.

Dan
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.