e.MiLoU Posté 8 Février 2007 Posté 8 Février 2007 (modifié) Bonjour à tous, J'ai une fois pris un hébergement chez OVH dont je n'étais pas du tout content et j'ai donc changé d'hébergeur. Mais malheureusement, je suis actuellement sur un projet qui est hébergé sur OVH... Et j'ai donc des problèmes (on devrait trouver une rime d'ailleurs). Ca c'est pour la petite histoire. Mon problème est donc que mon .htaccess qui fonctionne parfaitement en local, ne fonctionne pas du tout en ligne. Je mets donc je code RewriteEngine OnRewriteRule ^membres/([0-9]+)/(.+)$ membres_details.php?id=$1 [L]RewriteRule ^activites/([0-9]+)/(.+)$ activites.php?comite=$1 [L]RewriteRule ^articles/([0-9]+)/([0-9]+)/(.+)$ activites.php?comite=$1&article=$2 [L]RewriteRule ^forum/forum/([0-9]+)-(.+)$ forum_forum.php?forum=$1 [L]RewriteRule ^forum/sujet/([0-9]+)-(.+)$ forum_sujet.php?sujet=$1 [L]RewriteRule ^forum/categorie/([0-9]+)-(.+)$ forum_categorie.php?categorie=$1 [L]RewriteRule ^(.+)/$ $1.php [QSA,L] Je suppose que j'ai oublié quelque chose, mais quoi?? Les problèmes rencontrés sont: par exemple pour la page activité, il ne me passe pas les variables en get (mon tableau $_GET est vide) et également le dernier Rewrite ne fonctionne pas; il me dit que pour une page exemple/ la page exemple.php.php n'existe pas... Si quelqu'un voit ce qui cloche. Merci d'avance. e.MiLoU Modifié 8 Février 2007 par e.MiLoU
Dan Posté 8 Février 2007 Posté 8 Février 2007 Pour les hébergements mutualisés OVh, il faut faire précéder le second argument des règles par / Par exemple: RewriteRule membres/([0-9]+)/(.+)$ /membres_details.php?id=$1 [L]
KaRaK Posté 8 Février 2007 Posté 8 Février 2007 Bonsoir, Je pense qu'il faut que tu rajoutes un slash comme cela est expliqué ici : http://guides.ovh.com/HtaccessModRewrite
e.MiLoU Posté 8 Février 2007 Auteur Posté 8 Février 2007 J'ai déjà essayer toutes les possibilités possibles et inimaginables pour l'url rewriting. Mon site se trouve a l'adresse http://www.monsite.com/whynotbeta/index.php J'ai essayé en mettant /www/whynotbeta/ ou /whynotbeta/ et ça ne donne rien du tout. En plus, au vu des erreurs, on dirait que le serveur ne comprend tout simplement rien...
Dan Posté 8 Février 2007 Posté 8 Février 2007 Enlève aussi le ^ du premier argument... parce que si le serveur sert /membres... ^membres ne passera pas la règle. Tu peux essayer ceci: RewriteRule /?membres/([0-9]+)/(.+)$ /membres_details.php?id=$1 [L]
e.MiLoU Posté 8 Février 2007 Auteur Posté 8 Février 2007 Merci de ton aide mais ça ne fonctionne toujours pas. De plus certains fonctionnent (notamment article), certaines fonctionnent mal et d'autres pas du tout (pour le forum) Mon code actuel RewriteEngine onRewriteRule membres/([0-9]+)/(.+)$ /betawhynot/membres_details.php?id=$1 [L]RewriteRule articles/([0-9]+)/([0-9]+)/(.+)$ /betawhynot/activites.php?comite=$1&article=$2 [L]RewriteRule activites/([0-9]+)/(.+)$ /betawhynot/activites.php?comite=$1 [L]RewriteRule forum/forum/([0-9]+)-(.+)$ /betawhynot/forum_forum.php?forum=$1 [L]RewriteRule forum/sujet/([0-9]+)-(.+)$ /betawhynot/forum_sujet.php?sujet=$1 [L]RewriteRule forum/categorie/([0-9]+)-(.+)$ /betawhynot/forum_categorie.php?categorie=$1 [L]RewriteRule (.+)/$ /betawhynot/$1.php [L,QSA]
e.MiLoU Posté 11 Février 2007 Auteur Posté 11 Février 2007 Merci de ta proposition, mais hélàs ça ne fonctionne toujours pas. Le plus étrange est que certaines règles fonctionnent et d'autres pas du tout... Quand je vois ça je me demande pourquoi OVH est numéro de l'hébergement en france...
Dan Posté 11 Février 2007 Posté 11 Février 2007 Quand je vois ça je me demande pourquoi OVH est numéro de l'hébergement en france... Avant d'accuser stérilement, il faudrait peut être se dire que si ça marche chez quelques dizaines de milliers d'autres personnes, l'erreur doit probablement être chez toi,non ? Et si tu nous donnais ces erreurs, on pourrait peut-être t'aider parce que la boule de cristal c'est pas vraiment mon truc. Tu as quoi comme erreurs ? des pages 404 ? Une erreur 500 ? Des styles CSS qui ne sont pas pris en compte ? C'est quel type d'hébergement ? Quel domaine ? Et finalement donne-nous une URL qui ne fonctionne pas, et comment elle doit être réécrite.
e.MiLoU Posté 11 Février 2007 Auteur Posté 11 Février 2007 Oui désolé de dire ça mais je n'ai jamais eu de problème quand je mettais mon site sur Oxito (hébergeur que je recommande) alors que chez OVH, ça n'a jamais marché du premier coup. De plus mon site fonctionne avec Wamp et EasyPHP... Mais ce n'est pas le sujet. Pour les exemples. (j'ai demander une print_r des variables GET avant d'avoir le reste du site) Cette page fonctionne parfaitement: http://www.cercle-solvay.be/betawhynot/art...change,le,titre, Celle-ci non: http://www.cercle-solvay.be/betawhynot/activites/2/balef (les variables GET ne sont pas prises en compte) La page membres (http://www.cercle-solvay.be/betawhynot/membres/) fonctionne (j'ai un répertoire membres/ dans mon site) alors que les autres pages (par exemple http://www.cercle-solvay.be/betawhynot/membres_connexion/) ne fonctionnent pas... Pour le forum c'est encore plus fou... cette page http://www.cercle-solvay.be/betawhynot/for...st,enfin,ajoute n'est même pas pointée vers la bonne page php... Si vous avez une idée (ou bien OVH ne gère pas bien les urlrewriting avec les dossiers...) Merci encore pour votre patience et vos conseils...
Leonick Posté 11 Février 2007 Posté 11 Février 2007 (j'ai demander une print_r des variables GET avant d'avoir le reste du site) Cette page fonctionne parfaitement: http://www.cercle-solvay.be/betawhynot/art...change,le,titre, celle-ci http://www.cercle-solvay.be/betawhynot/art...change,le,titre non ! OVH gère sans problème l'url rewriting, même avec des dossiers virtuels ! Il faudrait que l'on ai le htaccess pour voir d'où pourrait provenir le problème.
e.MiLoU Posté 11 Février 2007 Auteur Posté 11 Février 2007 Pour le .htaccess, je redonne le code RewriteEngine onRewriteRule membres/([0-9]+)/(.+)$ /betawhynot/membres_details.php?id=$1 [L]RewriteRule articles/([0-9]+)/([0-9]+)/(.+)$ /betawhynot/activites.php?comite=$1&article=$2 [L]RewriteRule activites/([0-9]+)/(.+)$ activites.php?comite=$1&test=test [L]RewriteRule forum/forum/([0-9]+)-(.+)$ /betawhynot/forum_forum.php?forum=$1 [L]RewriteRule forum/sujet/([0-9]+)-(.+)$ /betawhynot/forum_sujet.php?sujet=$1 [L]RewriteRule forum/categorie/([0-9]+)-(.+)$ /betawhynot/forum_categorie.php?categorie=$1 [L]RewriteRule (.+)/$ /betawhynot/$1.php [L] J'ai aussi remplacé les [L] par des [L,QSA] comme suggéré mais aucun changement... Je ne vois aucune logique dans les "bugg" (je le répète tout fonctionne en local)...
Leonick Posté 11 Février 2007 Posté 11 Février 2007 essaie de rajouter un R aux règles pour voir afficher la réécriture
e.MiLoU Posté 12 Février 2007 Auteur Posté 12 Février 2007 (modifié) essaie de rajouter un R aux règles pour voir afficher la réécriture Voilà je l'ai fait, je vais essayer d'un peu regarder ça, merci pour le tuyau ;-) Quelqu'un a une idée pour expliquer le fait qu'il ajoute .php.php aux url et non .php tout court?? (Suis complètement perdu là...) Modifié 12 Février 2007 par e.MiLoU
steph Posté 12 Février 2007 Posté 12 Février 2007 ça vient peut-être de ta dernière règle tu ajoutes un .php à ton paramètre $1 dans : RewriteRule (.+)/$ /betawhynot/$1.php [L] Steph.
romainb Posté 12 Février 2007 Posté 12 Février 2007 J'ai eu un probleme de htacces il y a 2 jours sur un dédié chez ovh. J'ai changé 2 choses: - dans le fichier httpd.conf, j'ai ajouté un -Multiviews <Directory />Options Includes ExecCGI -Multiviews FollowSymLinks Indexes AllowOverride All </Directory> - j'ai modifié le chemin du htaccess en ajoutant le répertoire du site sur le dédié, ~site: RewriteEngine onRewriteRule ^categorie-([a-z_0-9]+)\.html$ /~site/cat.php?catid=$1 [L] Voilà chez moi ça a marché, j'espère que ce sera le cas pour toi.
e.MiLoU Posté 12 Février 2007 Auteur Posté 12 Février 2007 Hélas je n'ai pas de dédié mais un mutu... je déprime vraiment là (vais essayer d'envoyer un mail au support...)
tamplan Posté 18 Février 2007 Posté 18 Février 2007 Bonjour, Je suis sur un 90plan mutualisé chez ovh et ait réussi un début de redirection (c'est la première fois que je fais ça). A la recherche d'une solution à mon problème je suis tombé sur ces infos : - 'Options followsymlinks' est déja activé par défaut - Indiquez le répertoire de base du site si celui-ci n'est pas à la racine - Précédez la partie droite d'un caractère '/' (dernier point à vérifier, ça marche pour moi sans :!: ) Voici le fichier .htaccess que je te propose : Options +followsymlinksRewriteEngine OnRewriteBase /betawhynotRewriteRule membres/([0-9]+)/(.+)$ /membres_details.php?id=$1 [L]RewriteRule articles/([0-9]+)/([0-9]+)/(.+)$ /activites.php?comite=$1&article=$2 [L]RewriteRule forum/forum/([0-9]+)-(.+)$ /forum_forum.php?forum=$1 [L]RewriteRule forum/sujet/([0-9]+)-(.+)$ /forum_sujet.php?sujet=$1 [L]RewriteRule forum/categorie/([0-9]+)-(.+)$ /forum_categorie.php?categorie=$1 [L]RewriteRule (.+)/$ /$1.php [L] Et donc avec la réserve que j'ai faîte au sujet du caractère '/', ceci devrait fonctionner également : Options +followsymlinksRewriteEngine OnRewriteBase /betawhynotRewriteRule membres/([0-9]+)/(.+)$ membres_details.php?id=$1 [L]RewriteRule articles/([0-9]+)/([0-9]+)/(.+)$ activites.php?comite=$1&article=$2 [L]RewriteRule forum/forum/([0-9]+)-(.+)$ forum_forum.php?forum=$1 [L]RewriteRule forum/sujet/([0-9]+)-(.+)$ forum_sujet.php?sujet=$1 [L]RewriteRule forum/categorie/([0-9]+)-(.+)$ forum_categorie.php?categorie=$1 [L]RewriteRule (.+)/$ $1.php [L] En espérant que ça t'aide ...
e.MiLoU Posté 19 Février 2007 Auteur Posté 19 Février 2007 Hélas ton code ne fonctionne pas plus que le mien... J'ai envoyé un mail à OVH... j'attends qu'ils répondent...
jnj Posté 7 Novembre 2007 Posté 7 Novembre 2007 URL rewriting / .htaccess == grosse différence entre ovh et les autres : wamp etc. : IL FAUT CECI : RewriteRule ^/([-_a-zA-Z0-9]+).... etc. la suite de la règle alors que sur les autres ceci suffit : RewriteRule ^([-_a-zA-Z0-9]+).... etc. la suite de la règle faut le / (slash) aposé par apache en début de string ^/( sur OVH sinon cela ne fonctionne pas. j'en ai bavé 2 heures pour arriver à cela !! vieux post auquel je réponds mais bon, je dois pas être le seul à me faire piéger en espérant que cela en aide quelques uns jnj
winch Posté 16 Mai 2008 Posté 16 Mai 2008 Bonjour e.MiLoU, J'ai aujourd'hui le meme probleme que celui dont tu parlai (en 2005!!!) Je suis chez OVH en mutu 90plan. certain GET ne passent pas alors que d'autres si : celui ci passe: #Derniers Votes avec numero de page RewriteRule ^/derniers-votes(/([0-9]+))?$ /derniers_votes.php?page=$2 [L] alors que celui la non (bien que juste apres) # Livre d'or RewriteRule ^/livreor(/([0-9]+))?$ /livreor.php?page=$2 [L] Test effectue avec un print_r ( $_GET); Ma question est: as-tu resolu ton probleme depuis? comment? si d'autres ont une idee du pourquoi du comment, ne pas hesiter a apporter votre grain de sel! Merci d'avance :-) Nicolas
yakou32 Posté 27 Juin 2008 Posté 27 Juin 2008 Bonjour Nicolas, J'ai le même problème... As-tu finalement trouvé une solution ?
winch Posté 2 Juillet 2008 Posté 2 Juillet 2008 Bonjour Yakou32 oui j'ai trouve, il suffit de rajouter cette ligne en haut de ton .htaccess : # Empeche de parcourir differents nom si pas trouve la cibleOptions -MultiViews C'est pour empecher un fonctionnalite des serveurs d'ovh qui recherche le nom le plus proche si il ne trouvent pas immediatement la page demandee a partir d'un index. La fonction a l'air un peu foireuse. En tout cas ca marche impeccable ensuite! J'espere que ca pourra aider pas mal de gens car je sais que je me suis arrache les cheveux sur ce probleme franchement illogique. Nico
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant