url réécrites coté php, RewriteRule .* index.php et page 404 qui ne marche plus
3 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
url réécrites coté php, RewriteRule .* index.php et page 40
bonjour,
dans le cadre de mon travail, j'ai eu a optimiser le référencement d'un site.
nous avons réécrit les url coté php pour que les catégories apparaissent sous la forme /cat1/cat2/cat3/
et les fiches produits sous la forme /cat1/cat2/cat3/prod1.html
mon probleme est que je n'arrive plus à activer la page 404.
dans le htaccess, il existe une directive : "RewriteRule .* index.php"
la page 404 ne fonctionne que lorsque cette ligne est commentée, parcontre c'est l'ensemble des pages du site présentant les urls avec le format présenté ci dessus qui renvoient une erreur 404.
à l'inverse, si je laisse cette directive en place, plus aucune page ne renvoie d'erreur (je peux taper : /cat1/blabla) et la page affichée reste la catégorie 1.
quelqu'un aurait il une piste ?
il faudrait faire des modification coté php ou plutot coté htaccess.
je suis perdu, merci d'avance pour votre aide.
dans le cadre de mon travail, j'ai eu a optimiser le référencement d'un site.
nous avons réécrit les url coté php pour que les catégories apparaissent sous la forme /cat1/cat2/cat3/
et les fiches produits sous la forme /cat1/cat2/cat3/prod1.html
mon probleme est que je n'arrive plus à activer la page 404.
dans le htaccess, il existe une directive : "RewriteRule .* index.php"
la page 404 ne fonctionne que lorsque cette ligne est commentée, parcontre c'est l'ensemble des pages du site présentant les urls avec le format présenté ci dessus qui renvoient une erreur 404.
à l'inverse, si je laisse cette directive en place, plus aucune page ne renvoie d'erreur (je peux taper : /cat1/blabla) et la page affichée reste la catégorie 1.
quelqu'un aurait il une piste ?
il faudrait faire des modification coté php ou plutot coté htaccess.
je suis perdu, merci d'avance pour votre aide.
voici le htaccess :
je pense que le soucis vient du fait que comme tout passe par index.php, apache ne sait plus faire la difference entre une adresse qui existe ou qui n'existe pas sur le site. Ainsi, quand on tape n'importe quoi apres le nom de domaine dans la barre d'adresse, le site se raffraichi et reste sur la page d'accueil, la page 404 n'apparait pas.
le seul moyen que j'ai trouvé pour l'instant est de lister l'ensemble des urls du site (fiches produit , etc) dans un tableau et de renvoyer (coté PHP) vers la page 404 si l'url tapée n'y est pas présente, mais cela pose pas mal de soucis.
une idée ?
- Code: Tout sélectionner
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^admin$ - [L]
RewriteRule ^admin/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php
ErrorDocument 404 /page_404.htm
je pense que le soucis vient du fait que comme tout passe par index.php, apache ne sait plus faire la difference entre une adresse qui existe ou qui n'existe pas sur le site. Ainsi, quand on tape n'importe quoi apres le nom de domaine dans la barre d'adresse, le site se raffraichi et reste sur la page d'accueil, la page 404 n'apparait pas.
le seul moyen que j'ai trouvé pour l'instant est de lister l'ensemble des urls du site (fiches produit , etc) dans un tableau et de renvoyer (coté PHP) vers la page 404 si l'url tapée n'y est pas présente, mais cela pose pas mal de soucis.
une idée ?
3 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Parts de marché des moteurs en Europe (Février 2006)
- Un moyen très simple et gratuit d'obtenir des backlinks
- Parts de marché des moteurs aux USA (Avril 2008)
- Comment éviter les contenus dupliqués (avec/sans le www)
- Comment placer son blog dans Google Finance
- Google compter lever entre 2 et 3 milliards de dollars
- PB redirection php header(Location: erreur.php?erreur=404)
- RewriteRule et script PHP - Est-ce possible ?
- [RESOLU] RewriteRule DotClear -> enlever /index.php/
- RewriteRule ^(Directory|Annuaire)/$ index.php?lang=$1
- RewriteRule ^publicite.html pub.php ne fonctionne pas
- Erreur 404 en php
- 404 et easy php
- redirection 310 dans un 404.php
- De .html en .php, comment éviter le 404?
- redirection 404 avec RewriteRule
- .htaccess + ErrorDocument 404 + extension PHP
- probleme entre index.php centre.php et news.php
- Erreur 404 et adresse erronée (PHP et htaccess)
- Script PHP renvoyant une erreur 404
- Détection de site inexistant ou d'erreur 404 en PHP
Consultez la description détaillée des produits ou services de Google suivants : Google Video Store
- Test HTTP header
Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

le forum