Jump to content

[Résolu]Problème Url Simplifiée Erronée Identiques Sauf Numéro


lechapelier

Recommended Posts

Bonjour,

J'ai un bug que je n'arrive pas a résoudre concernant mes url simplifiées.

Mes url simplifiées sont identiques, seul un numéro change.

Exemple:

Catégorie produit: shamballa

sous catégorie: Shamballa qualité supérieur:

 

 

xxxxxx

déjà j'ai un nombre 30 devant la catégorie dans l'url je ne sais pourquoi.

Ensuit dans les produits pour exemple le :

Shamballa Bleu ciel 7 Perles 85 strass

L'url simplifiée est :

xxxxxxx

Vous remarquez que l'url simplifiée ne correspond pas et que le nombre de la sous catégorie produit a disparu.

C'est ainsi pour quasi tout mon catalogue.

Voici les détail qui pourrons vous êtres utiles:

Serveur mutualisé ovh pro, prestashop v 1.4.9.0 sans passer par ovh install manuelle.

Réglages prestashop:

preferences/performances:

smarty:
Forcer la compilation non
cache oui

CCC tout est coché sur le choix du haut

cache:
utiliser le cache non (pas possible sur mutu ovh je crois).

Outils/générateurs:

optimisations oui

url simplifiées oui

confi spécifique:

SetEnv PHP_VER 5

SetEnv REGISTER_GLOBALS 0

Et mon htaccess optimisé:


# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# WARNING: PLEASE DO NOT MODIFY THIS FILE MANUALLY. IF NECESSARY, ADD YOUR SPECIFIC CONFIGURATION WITH THE HTACCESS GENERATOR IN BACK OFFICE
# http://www.prestashop.com - http://www.prestashop.com/forums

SetEnv PHP_VER 5
<IfModule mod_rewrite.c>
# URL rewriting module activation
RewriteEngine on

# URL rewriting rules
RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2$3.jpg [L]
RewriteRule ^([0-9]+)\-([0-9]+)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2.jpg [L]
RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$1$2.jpg [L]
RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$1$2$3.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$1$2$3$4.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9.jpg [L]
RewriteRule ^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/c/$1$2.jpg [L]
RewriteRule ^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$ /img/c/$1.jpg [L]
RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/c/$1$2.jpg [L]
RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L]
RewriteRule ^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L]
RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]*(/[a-zA-Z0-9-]*)+ /category.php?id_category=$1&noredirect=1 [QSA,L]
RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]* /category.php?id_category=$1 [QSA,L]
RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*) /supplier.php?id_supplier=$1 [QSA,L]
RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*) /manufacturer.php?id_manufacturer=$1 [QSA,L]
RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms=$1 [QSA,L]
RewriteRule ^content/category/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms_category=$1 [QSA,L]
RewriteRule ^page-non-trouvee$ /404.php [QSA,L]
RewriteRule ^adresse$ /address.php [QSA,L]
RewriteRule ^adresses$ /addresses.php [QSA,L]
RewriteRule ^authentification$ /authentication.php [QSA,L]
RewriteRule ^meilleures-ventes$ /best-sales.php [QSA,L]
RewriteRule ^panier$ /cart.php [QSA,L]
RewriteRule ^contactez-nous$ /contact-form.php [QSA,L]
RewriteRule ^bons-de-reduction$ /discount.php [QSA,L]
RewriteRule ^suivi-commande-invite$ /guest-tracking.php [QSA,L]
RewriteRule ^historique-des-commandes$ /history.php [QSA,L]
RewriteRule ^identite$ /identity.php [QSA,L]
RewriteRule ^fabricants$ /manufacturer.php [QSA,L]
RewriteRule ^mon-compte$ /my-account.php [QSA,L]
RewriteRule ^nouveaux-produits$ /new-products.php [QSA,L]
RewriteRule ^commande$ /order.php [QSA,L]
RewriteRule ^details-de-la-commande$ /order-follow.php [QSA,L]
RewriteRule ^commande-rapide$ /order-opc.php [QSA,L]
RewriteRule ^avoirs$ /order-slip.php [QSA,L]
RewriteRule ^mot-de-passe-oublie$ /password.php [QSA,L]
RewriteRule ^promotions$ /prices-drop.php [QSA,L]
RewriteRule ^recherche$ /search.php [QSA,L]
RewriteRule ^plan-du-site$ /sitemap.php [QSA,L]
RewriteRule ^magasins$ /stores.php [QSA,L]
RewriteRule ^fournisseurs$ /supplier.php [QSA,L]
</IfModule>

# ACTIVATION DE LA COMPRESSION DES PAGES
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/x-httpd-php
# POUR LES NAVIGATEURS INCOMPATIBLES
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
#PAS DE COMPRESSION POUR LES FORMATS NE LE NECESSITANT PAS
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
</IfModule>

# GESTION DES DATES D'EXPIRATION POUR FAVORISER LE CACHE NAVIGATEUR
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 7200 seconds"
ExpiresByType image/jpg "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
AddType image/x-icon .ico
ExpiresByType image/ico "access plus 2592000 seconds"
ExpiresByType image/icon "access plus 2592000 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType text/css "access plus 2592000 seconds"
ExpiresByType text/javascript "access plus 2592000 seconds"
ExpiresByType text/html "access plus 7200 seconds"
ExpiresByType application/xhtml+xml "access plus 7200 seconds"
ExpiresByType application/javascript A259200
ExpiresByType application/x-javascript "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
</IfModule>

# MISE EN CACHE DES FICHIERS NON DYNAMIQUES : IMAGES, CSS, JAVASCRIPT...
<IfModule mod_headers.c>
<FilesMatch "\\.(ico|jpe?g|JPE?G|png|gif|swf|css|gz)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
<FilesMatch "\\.(js)$">
Header set Cache-Control "max-age=2592000, private"
</FilesMatch>
<filesMatch "\\.(html|htm)$">
Header set Cache-Control "max-age=7200, public"
</filesMatch>

# DESACTIVATION DU CACHE POUR LES FICHIERS DYNAMIQUES
<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>
</IfModule>

# SECURISATION DES ACCES AUX FICHIERS
<files .htaccess>
order allow,deny
deny from all
</files>
<FilesMatch "\.(inc|tpl|h|ihtml|sql|ini|conf|class|bin|spd|themes|modules|exe|asa)$">
deny from all
</FilesMatch>

# DÉSACTIVATION DE LA SIGNATURE DU SERVEUR
ServerSignature Off

# PRÉVENTION DES ATTAQUES DDOS
LimitRequestBody 10240000

# SUPPRESSION DES ETAGS
Header unset ETag
FileETag none

# GESTION CORRECTE DES PROXIES
Header append Vary User-Agent env=!dont-vary

# Catch 404 errors
ErrorDocument 404 /404.php

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType image/x-icon "access plus 1 year"
</IfModule>

FileETag INode MTime Size
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>


Voila si vous avez des pistes ou une solution n'hésitez pas car je pense que mon référencement est impossible avec ce genre de problème.

Merci à vous.

Edited by lechapelier (see edit history)
  • Like 1
Link to comment
Share on other sites

Bonjour,

 

une solution à quel problème ?

 

Vos url contiennent un n°, vous s'avez l'id de la catégorie, du produit du cms ...

 

Après si l'url simplifié ne vous convient pas pour vos produits il vous suffit de les modifier dans la section SEO de la fiche produit, il vous suffit de vous référer à la documentation de Prestashop disponible gratuitement en ligne.

 

à mon avis vous devriez aussi générer de nouveau votre htaccess à partir du backoffice de Prestashop car celui ci est bien confus avec plusieurs fois des informations identiques.

 

Si vous désirez avoir l'ensemble des sous catégories dans vos url et retirer les numéros des url vous pouvez toujours passer par le module développé par De bout en Bout : http://www.prestatoolbox.fr/referencement-seo/137-url-rewriting-.html

Link to comment
Share on other sites

effectivement ovh ne gère pas le cache et vous devez impérativement le désactiver.

Même le cache de ficher "système de fichier" doit être désactivé sinon vous allez perdre de précieuses secondes.

Comme le dit Jekyl, le numéro c'est normal, cela permet à prestashop de justement faire la distinction si vous aviez des noms exactement identique.

Imaginons que pour une raison X, vous ayez 2 articles nommés "la tete a toto", prestashop serait incapable de vous les afficher. Grâce au numéro (qui est incrémentiel) cela vous permet automatiquement de pouvoir faire une différence "technique" entre les deux. Ainsi vous aurez "322-tete-a-toto" et "323-tete-a-toto".. Pas bête non ?

 

Le bug interdisant la correction des URL à été corrigé, vous pouvez donc en cas de soucis, modifier l'URL simplifiée directement dans votre fiche article et la mettre à votre sauce. En effet prestashop n'est pas infaillible.

 

un Regen de votre htacces est le bienvenu

 

et un petit conseil, chronométrez votre site avec compression CCC, et sans compression CCC. Avec ovh, le sans compression est parfois meilleur et évite des erreurs selon les explorateurs..

 

Cordialement.

Link to comment
Share on other sites

Merci jean francois.

 

Je ne m'étais pas occupé de l'intégration des produits sur le site, c'est pourquoi je ne connaissais pas cette option que j'ai découvert grâce à jeckyl, générer l'url simplifiée et la personnalisation de l'url en cas de besoin, exactement ce que je cherchais et d'une simplicité...

 

Mon dieu que j'ai honte de ne pas avoir trouvé tout seul, c'était tellement évident, je n'avais trouvé aucun topic là dessus, pas étonnant il suffisait de lire la notice presta...

 

La personne qui a intégré les produits utilisait la fonction dupliquer, qui duplique également l'url simplifiée, une fois le titre changé dans la nouvelle annonce qui a été dupliqué, il fallait cliquer sur générer pour remplacer l'url de l'ancien produit par le nouveau saisi ce qui n'a pas été fait...

 

Bien dommage que ça ne se fasse pas automatiquement lorsque le titre produit est changé ça serait logique, c'est du détail mais bon.

 

je comprends bien l'utilité du nombre dans l'url simplifiée en effet ça peut être très utile.

 

Je vais régénérer mon ht access sur vos conseils.

 

J'avais intégré ces blocs de code dans mon ht access que j'ai trouvé sur la page de effi10 http://www.effi10.co...ances-htaccess/ qui semblaient tout indiqué... semblait hein...

 

J'ai un Time to first byte énorme de 5 secondes en moyenne (ça peut être pire parfois) qui représente la moitié du temps de chargement de mon site.

 

Je vais tester avec et sans compression CCC pour voir s'il y a une amélioration, merci du tuyau.

 

Je cherche un nouvel hébergeur car je rentre en phase de production donc un serveur mou comme j'ai actuellement n'est pas envisageable, je veux atteindre un chargement de ma page principale de A à Z de 3 secondes qui me semble correct.

 

Surement de l'optimisation presta et un serveur qui pédale plus vite devrait aider, je vais voir cette partie avec jeckyl.

 

Merci encore à vous deux.

 

Cordialement.

Edited by lechapelier (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...