Url rewriting chez ovh versus 1&1?

tryan

WRInaute passionné
Bonjour

Pourquoi une règle de rewriting fonctionnant chez 1&1 ne marche pas chez ovh ?

La règle est la suivant:
Code:
Options +FollowSymlinks 
RewriteEngine on

#Rewrite des pages
RewriteRule  ^(.*)-([0-9]*)\.php$  /cms/page-site.php?titre=$1&page=$2 [L]
 
#Rewrite des categories
RewriteRule  ^categorie-([0-9]*)-(.*)\.php$  /cms/categorie.php?monid=$1&categorie=$2 [L]


#On rewrite le flux rss
RewriteRule ^rss\.xml$  /cms/rss.php [L]

#On rewrite le plan sitemap xml
RewriteRule ^sitemap\.xml$  /cms/sitemap.php [L]
L'ensemble du rewrite fonctionne bien sous les 2 hébergeurs sauf le Rewrite des catégories qui merde sous ovh (plan start1).
Quelle en est la raison svp ?
Merci
 

Leonick

WRInaute accro
selon les paramétrages des serveurs web, une uri peut se trouver soit sous la forme ^mapage$ soit sous la forme ^/mapage$
 

tryan

WRInaute passionné
Donc:
Code:
RewriteRule  ^/categorie-([0-9]*)-(.*)\.php$  /cms/categorie.php?monid=$1&categorie=$2 [L]
C'est bien sa ?
Si c'est sa, sa ne marche pas ^^... Dans les 2 cas j'ai une page blanche sans erreur, rien de plus !
 

tryan

WRInaute passionné
Non, sa ne marche pas non plus :( .
Si sa peut aider et donc m'aider aussi:
Je teste dans un dossier, le htaccess se trouve dans ce dossier, mon lien est de la forme
Code:
<a title="'.$nom_de_la_categorie.'" href="categorie-'.$id_de_la_categorie.'-'.OptimiseUrl($nom_de_la_categorie).'.php">Suite...</a>
id_de_la_categorie = id
nom_de_la_categorie = nom de la catégorie
fonction OptimiseUrl() voir ci dessous:
Code:
function OptimiseUrl($chaine)
{    

    $chaine=strtolower($chaine);
    
    $accents = Array("/é/", "/è/", "/ê/","/ë/", "/ç/", "/à/", "/â/","/á/","/ä/","/ã/","/å/", "/î/", "/ï/", "/í/", "/ì/", "/ù/", "/ô/", "/ò/", "/ó/", "/ö/");
    $sans = Array("e", "e", "e", "e", "c", "a", "a","a", "a","a", "a", "i", "i", "i", "i", "u", "o", "o", "o", "o");
    
    $chaine = preg_replace($accents, $sans,$chaine);  
    
    $chaine = preg_replace('#[^a-z0-9_-]#','-',$chaine);
    while (strpos($chaine,'--') !== false) $chaine = str_replace('--','-',$chaine);
    
    return $chaine; 
}
 

Discussions similaires

Haut