Pan Posté 26 Juin 2006 Posté 26 Juin 2006 (modifié) Bonjour, J'ai installé la contrib Ultimate SEO url qui ne pose pas de problème particulier sauf que les adresses de la boutique renvoient systèmatiqument une erreur 404. Les url n'affichent rien de bizarre, elles sont du style : http://www.monsite.com/catalog/truc-p-28.html (pour un article) http://www.monsite.com/catalog/machin-c-28.html (pour une rubrique) Où pourrait-il y avoir un problème ? Dans le .htaccess ? Modifié 27 Juin 2006 par Dan
Anonymus Posté 27 Juin 2006 Posté 27 Juin 2006 Oui. C'est assez vague, comme question. L'erreur peut venir de quantité d'endroits différents. Essaie de repasser au peigne fin le 'readme' d'installation de cette contribution, essaie de voir où ca peut coincer, et postes nous le htaccess, histoire que l'on puisse se rendre compte s'il n'y aurait pas une erreur qui traine dedans
objectifweb Posté 27 Juin 2006 Posté 27 Juin 2006 Bonjour Ca pue le htaccess et l'url rewriting ..... Pat
Pan Posté 27 Juin 2006 Auteur Posté 27 Juin 2006 Merci Voici mon .htaccess Options +FollowSymLinksRewriteEngine On RewriteBase /directory/RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING} Je croix qu'il faut remplacer directory par catalog pour que ça fonctionne car ça fonctionne. Par contre mon site est hyper lent depuis que j'ai fait ça. Est-ce normal ou est-ce une coincidence ? Options +FollowSymLinksRewriteEngine On RewriteBase /catalog/RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}
Spidetra Posté 27 Juin 2006 Posté 27 Juin 2006 Je croix qu'il faut remplacer directory par catalog pour que ça fonctionne car ça fonctionne. Par contre mon site est hyper lent depuis que j'ai fait ça. Est-ce normal ou est-ce une coincidence ? Pas de pb de performance particulière après l'install de cette contrib.
Dan Posté 27 Juin 2006 Posté 27 Juin 2006 Déjà tu devrais remplacer tous tes %{QUERY_STRING} par [QSA] Et tant qu'à faire utiliser le flag [L], cela éviterait d'avoir à passer à travers toute la liste pour chaque règle... Mets tes règles les plus fréquentes au début de la liste et termine tes règles par [QSA,L] . Cela remplace donc le &%{QUERY_STRING} Tu gagneras BEAUCOUP en temps d'exécution. Dan
Pan Posté 27 Juin 2006 Auteur Posté 27 Juin 2006 Merci à tous c'est bon ça fonctionne ! Dan, j'ai effectué la modifiaction que tu as indiqué mais ce n'est pas flagrant pour le moment, je pense que cela est du au fait que je n'ai pas assez d'articles dans ma bdd, ce sera sans doute plus significatif dans qqs temps. Sinon je ne m'y connais pas beaucoup mais changer %{QUERY_STRING} par [QSA] à quoi ça sert ? Allez @ +
Dan Posté 27 Juin 2006 Posté 27 Juin 2006 Le flag QSA sert à ajouter le QUERY_STRINg s'il existe. QSA=Query String Append Il ne sera interprété que si la règle valide. De plus le flag [L] dit au moteur de réécriture que c'est la dernière règle [Last] et que c'est donc inutile de continuer à analyser les règles suivantes. C'est là que tu vas gagner du temps. Dan
Pan Posté 14 Août 2006 Auteur Posté 14 Août 2006 (modifié) Je fais suite à ce post où Dan ma proposé une modif pour le htaccess IL s'avère cependant que cette modif bloque l'ajout d'unarticle dans le panier (avec la première version du htaccess ça fonctionne normalement). La modif fait apparaitre dans le navigateur un url assez bizarre du style -www.monsite/macatégorie-c-24%5BQSA%2CL%5D.html?products_id=31&action=buy_now&sort=2a Le passage qui ne me parait pas normal est souligné en gras. Pour info j'utilise la contrib seo, peut-être y a t il une incompatibilité c'est très dommage car la modif de Dan semblait être bien propre et devait accélérer les proces... Qu'en pensez vous ? Modifié 14 Août 2006 par Pan
bre Posté 9 Février 2007 Posté 9 Février 2007 j'ai moi aussi une erreur 404 malgré les nombreuses verif voici mon htacces # $Id: .htaccess,v 1.4 2001/04/22 20:30:03 dwatkins Exp $## This is used with Apache WebServers# The following blocks direct HTTP requests in this directory recursively## For this to work, you must include the parameter 'Limit' to the AllowOverride configuration## Example:##<Directory "/usr/local/apache/htdocs"># AllowOverride Limit## 'All' with also work. (This configuration is in your apache/conf/httpd.conf file)## This does not affect PHP include/require functions## Example: [url="http://server/catalog/includes/application_top.php"]http://server/catalog/includes/application_top.php[/url] will not work<Files *.php>Options +FollowSymLinksRewriteEngine On RewriteBase /RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}</Files>
madeijy Posté 21 Juin 2009 Posté 21 Juin 2009 Bonjour, J'ai exactement le problème de Pan J'ai installé la contrib Ultimate SEO url qui ne pose pas de problème particulier sauf que les adresses de la boutique renvoient systèmatiqument une erreur 404. Les url n'affichent rien de bizarre, elles sont du style : http://www.monsite.com/catalog/truc-p-28.html (pour un article) http://www.monsite.com/catalog/machin-c-28.html (pour une rubrique) J'ai verifié le fichier htaccess mais rien à faire, toujours le meme problème Avez-vous une idée ???
madeijy Posté 22 Juin 2009 Posté 22 Juin 2009 Bonjour [RESOLU] J'ai résolu mon problème et ne trouvant pas la solution sur le net, je me permet de la poster en espérant qu'elle aidera quelqu'un. Mon hebergeur (1&1) oscommerce se situe à la racine de mon espace de stockage. Dans toutes les explications, si le site se situe à la racine du site il faut mettre devant RewriteBase un slash ( ou anti je sais jamais) de cette manière afin de lui donner la racine du site. Le problème venait du faite que ce n'est pas la vrai racine, il y a souvent des repertoires parents du genre /homepages/4/nombasedonnees/htdocs/ Pour trouver le repertoire total, il est écrit dans votre fichier configure.php situé dans le repertoire admin/includes Donc au lieu de mettre un slash pour la racine de cette manière Options +FollowSymLinks RewriteEngine On RewriteBase / il faut mettre : Options +FollowSymLinks RewriteEngine On RewriteBase /homepages/4/nombasedonnees/htdocs/
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant