url rewrite et 60gp ovh

idoomy
Invité n'ayant pas de compte PHPfrance

08 mai 2009, 23:06

hello tous,
bha voila je viens demander de l'aide..

j'ai un site d'annonce de vélo, l'url à réécrire : ad_bicycle.php?id_bike=500 pour obtenir : ad-bicycle-titre-du-velo.html

Voila ce que j'ecris en dynamique dans mon htaccess se trouvant dans www :
RewriteEngine on
RewriteRule ^ad-bicycle-(FALCON RAZOR BMX BIKE FOR SALE).html$ ad_bicycle.php?id_bike=$1 [L]

Résultat, rien ne se passe, pas de réécriture ni d'erreur !


Comprends pas ! je me demande si ça viendrais du serveur OVH..? qlq saurait me renseigner siouplé?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

09 mai 2009, 00:14

Euh..... tu es bien conscient que telle quel, ta règle va uniquement rediriger l'url

Code : Tout sélectionner

ad-bicycle-FALCON RAZOR BMX BIKE FOR SALE.html
vers la page

Code : Tout sélectionner

ad_bicycle.php?id_bike=FALCON RAZOR BMX BIKE FOR SALE
ce qui n'a pas grand chose à voir avec ce que tu sembles demander ?
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

09 mai 2009, 02:43

ok je sort.. :arrow:

bon j'ai revu mon code et un pote m'a conseillé ça :
en fait j'écris ça dans le htaccess :
RewriteEngine on
RewriteRule (.*)(-.+)-([^-]+)-([^-&]*)([^-]*)(".$myTitelVar.")\.html $1$2&$3=$4$5\.html [N]
RewriteRule (.*)-([^-]+)-([^-]*)(.*)\.html $1.php?$2=$3$4 [L]
RewriteRule ^(.*).html $1.php [L]

$myTitelVar donnera le titre du vélo, j'ai vérifié ça me donne par exemple Mountain-Bike-Reflex-Infinity-Suspension-Aluminium
Mais toujours aucune réaction.. ni message d'erreur

Eléphant du PHP | 250 Messages

09 mai 2009, 10:08

Salut
Lle titre de ton post est, je le crains, juste:
Même problème rencontré dernièrement sur un hébergement de ce type chez eux: je n'ai jamais pu obtenir le rewrite.
Je crains donc que ce soit bien dû à l'hebergement.....
Tu n'as pas moyen de le tester sur un autre hébergement?
"L'histoire, à l'image de toutes choses dans l'univers, semble avoir comme unique règle le côté ondulatoire."

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

09 mai 2009, 12:15

D'après eux :
Mod_rewrite est disponible chez OVH sur l'ensemble des hébergements mutualisés (sauf 20gp).
http://guides.ovh.com/HtaccessModRewrite

Donc le problème est ailleurs... pour vérifier si cela fonctionne, tu peux commencer par une redirection basique :

Code : Tout sélectionner

RewriteEngine on RewriteRule ^toto.html$ index.php
Si lorsque tu rentres l'url "http://nomdedomaine/toto.html" tu es redirigé vers ta page d'index (en supposant que tu ais bien un index.php à la racine) c'est que la redirection fonctionne.

A partir de là, il faut bien définir tes règles de réécriture en déterminant ce qui est spécifié dans l'url et la page que tu souhaites réellement ouvrir.
En gros, à partir de l'url "ad-bicycle-velo.html" apache ne pourra jamais t'ouvrir dynamiquement la page "ad_bicycle.php?id_bike=500" à moins que cette règle (et surtout le "500") ne soit en dur dans ton fichier .htaccess... Il faut donc t'assurer que les paramètres dont tu as besoin pour la page php sont bien présents dans l'url réécrite :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 250 Messages

09 mai 2009, 15:24

D'après eux :
Mod_rewrite est disponible chez OVH sur l'ensemble des hébergements mutualisés (sauf 20gp).
http://guides.ovh.com/HtaccessModRewrite
)
Carrrramba! ...Bon:... 8-| ... Ryle vainqueur! :agenouille:
Merci!
"L'histoire, à l'image de toutes choses dans l'univers, semble avoir comme unique règle le côté ondulatoire."

Invité
Invité n'ayant pas de compte PHPfrance

11 mai 2009, 09:58

hello,
le code code]RewriteEngine on
RewriteRule ^toto.html$ index.php[/code] focntionne t bien.. donc oui chez ovh l'urlrewrite fonctionne et je ne mettais pas doute cela mais je posais la question de savoir comment elle s'implémentait chez OVH.. car le bout de code suivant

Code : Tout sélectionner

RewriteEngine on RewriteRule (.*)(-.+)-([^-]+)-([^-&]*)([^-]*)(".$myTitelVar.")\.html $1$2&$3=$4$5\.html [N] RewriteRule (.*)-([^-]+)-([^-]*)(.*)\.html $1.php?$2=$3$4 [L] RewriteRule ^(.*).html $1.php [L]
me paraît bon
donc je suis tout simplement paumé..