Problème UrlRewriting
Résolu
jiantox
Messages postés
1092
Date d'inscription
Statut
Membre
Dernière intervention
-
jiantox Messages postés 1092 Date d'inscription Statut Membre Dernière intervention -
jiantox Messages postés 1092 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Suite à ce post : https://forums.commentcamarche.net/forum/affich-25238410-url-rewriting-et-faux-dossiers
je me retrouve qu'avec des erreurs 404.
je résume : j'ai des lien type http://truc.lesite.com/users/profil/?I=pseudo
et j'aimerais faire : http://truc.lesite.com/users/pseudo/profil/
J'ai placé ceci dans mon htaccess dans le dossier profil ( erreurs 404 ) puis dans le dossier users ( toujours erreurs 404 )..
Comment faire pour que ceci fonctionne ?
Merci d'avance
Suite à ce post : https://forums.commentcamarche.net/forum/affich-25238410-url-rewriting-et-faux-dossiers
je me retrouve qu'avec des erreurs 404.
je résume : j'ai des lien type http://truc.lesite.com/users/profil/?I=pseudo
et j'aimerais faire : http://truc.lesite.com/users/pseudo/profil/
J'ai placé ceci dans mon htaccess dans le dossier profil ( erreurs 404 ) puis dans le dossier users ( toujours erreurs 404 )..
RewriteRule ^/profil - [L] RewriteRule ^/([^a-zA-Z0-9-]+)/profil/$ /profil/?I=$1 [L] RewriteRule ^/([^a-zA-Z0-9-]+)/$ /?I=$1 [L]
Comment faire pour que ceci fonctionne ?
Merci d'avance
4 réponses
Hello,
Je pense que tes URL du type "http://truc.lesite.com/users/profil/?I=pseudo " ne sont pas des URL valides.
Il faut plutôt un truc du genre "http://truc.lesite.com/users/profil.php?I=pseudo "
Une variable ne se met pas directement dans un dossier.
Je pense que tes URL du type "http://truc.lesite.com/users/profil/?I=pseudo " ne sont pas des URL valides.
Il faut plutôt un truc du genre "http://truc.lesite.com/users/profil.php?I=pseudo "
Une variable ne se met pas directement dans un dossier.
bah ça passe parce que ça se met sur l'index.php qui est dans le dossier
lesite.com/users/profil/?I=pseudo = lesite.com/users/profils/index.php?I=pseudo
écrire le "index.php" est facultatif ( du moin dans la barre d'adresse, apres dans le htaccess je sais pas.. )
lesite.com/users/profil/?I=pseudo = lesite.com/users/profils/index.php?I=pseudo
écrire le "index.php" est facultatif ( du moin dans la barre d'adresse, apres dans le htaccess je sais pas.. )
Le ^/users est nouveau.
Les RewriteRules doivent en tenir compte.
RewriteRule ^/users/profil - [L]
RewriteRule ^/users/([^a-zA-Z0-9-]+)/profil/$ /users/profil/?I=$1 [L]
RewriteRule ^/users/([^a-zA-Z0-9-]+)/$ /users/?I=$1 [L]
C'est au chemin relatif au domaine que ces règles sont comparées, pas au dossier en cours.
La directive RewriteBase pourrait être utilisée, mais ne sachant si d'autres RewriteRule existent, elle ne l'a pas été.
Les RewriteRules doivent en tenir compte.
RewriteRule ^/users/profil - [L]
RewriteRule ^/users/([^a-zA-Z0-9-]+)/profil/$ /users/profil/?I=$1 [L]
RewriteRule ^/users/([^a-zA-Z0-9-]+)/$ /users/?I=$1 [L]
C'est au chemin relatif au domaine que ces règles sont comparées, pas au dossier en cours.
La directive RewriteBase pourrait être utilisée, mais ne sachant si d'autres RewriteRule existent, elle ne l'a pas été.