Aller au contenu

Erreur 404 après install de Ultimate SEO sur oscommerce


Sujets conseillés

Posté (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 ?:boude:

Modifié par Dan
Posté

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 ;)

Posté

Merci

Voici mon .htaccess

Options +FollowSymLinks
RewriteEngine 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}

:whistling:

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 +FollowSymLinks
RewriteEngine 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}

Posté
:whistling:

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.

Posté

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

Posté

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 ? :smartass:

Allez @ +

Posté

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

  • 1 month later...
Posté (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é par Pan
  • 5 months later...
Posté

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 +FollowSymLinks
RewriteEngine 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>

  • 2 years later...
Posté

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 ???

Posté

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/

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...