cacher un paramètre par url rewriting

WRInaute occasionnel
Hello,

J'aimerai passer un paramètre dans l'url sans que celui ci s'affiche. En fait je souhaite pouvoir faire par url rewriting en sorte que ?zozo=xxxx ne s'affiche pas.

Actuellement j'utilise la règle suivante :

Code:
RewriteEngine on
RewriteRule ^([a-z]+)/(.+)\.html$ /?lang=$1&page=$2 [QSA,L]

Que dois-je ajouter a ma règle?

Une idée?


D'avance merci

megg


PS: je ne suis vraiment pas une spécialiste de l'url rewriting :(
 
WRInaute discret
Hello,

Essaye
Code:
RewriteEngine on
RewriteRule ^([a-z]+)/(.+)\.html$ /nom-page.extension?lang=$1&page=$2 [QSA,L]
AMHA il te manquait le nom de la page ( par ex : index.php)
mego a dit:
PS: je ne suis vraiment pas une spécialiste de l'url rewriting :(
C'est évident 8) , mais ça viendra :wink:
 
WRInaute occasionnel
en fait ça n'était pas ça ma question...

ma règle actuelle fonctionne très bien pour rewriter :

xxx?lang=fr&page=story <-> /fr/story.html

Maintenant j'aimerai pouvoir rajouter un autre paramètre à la suite qui lui ne sera pas visible pour l'utilisateur.
en fait j'ai /fr/story.html?id=4577 que j'aimerai transformer en /fr/story.html (le ?id=4577 étant masqué)

Peut être existe il une autre méthode que l'url rewriting pour effectuer cette opération.

merci
 
WRInaute occasionnel
ok merci, mais disons que cette méthode ressemble plus à une rustine qu'a ce que je veux faire.

Je souhaite vraiment pouvoir masquer certains paramètres envoyé afin d'avoir une URL le plus propre possible.
 
WRInaute discret
la variable doit obligatoirement etre visible qque part dans l'url pour qu'elle soit prise en consideration.

que ce soit entre "/monid/mapage/" ou mapage-monid-monparam2.html.
 
WRInaute occasionnel
ok merci...

Donc si j'ai bien compris je vais être obligé d'avoir des urls "moins propres" :cry:

je m'en retourne à une réecriture du genre : /en/lapage_9.html à la place de /en/lapage.html (le "_9" etant masqué dans cet exemple)...
 
WRInaute passionné
qu'est ce qui te gene dans des url du style /mapage-1569.html ?

je veux dire, pour quelle raison tu veux cacher le 1569 ?
 
WRInaute occasionnel
aladdin a dit:
qu'est ce qui te gene dans des url du style /mapage-1569.html ?

je veux dire, pour quelle raison tu veux cacher le 1569 ?

Au niveau de l'experience utilisateur c'est pas top... Qu'est ce qui est plus facile à retenir?
*lesite.com/coucou.html
ou
*lesite.com/coucou-42795.html

... en attendant je n'ai pas trouvé de solution à ce problème alors j'utilise la méthode -42795.

Megg
 
WRInaute discret
Formulons donc la question autrement :
pourquoi as-tu besoin du 42795 ?
aurais-tu plus de quarante mille pages sur les coucous :wink: :?:
 
WRInaute occasionnel
cardoule a dit:
Formulons donc la question autrement :
pourquoi as-tu besoin du 42795 ?
aurais-tu plus de quarante mille pages sur les coucous :wink: :?:

:D En effet je propose massivement des coucous ! :D
Blague à part c'était simplement pour illustrer mon propos...
l'effet sera le même pour l'utilisateur finale que ce soit -lesite.com/coucou_7.htm ou -lesite.com/coucou_2747.htm
Le _7 ou _2747 n'a aucun interêt pour mes utilisateurs...
 
Nouveau WRInaute
Bonjour mego et les autres,

Je relance votre discussion car j'aimerais faire la même chose que vous, à savoir masquer un des paramètres de mon url via URL Rewriting.

Exemple :
page.php?id=45&titre="manger"
=>
page-manger.html

Pour être plus claire, je ne veux pas mettre l'id de ma page dans l'URL.

Le problème est que je ne connais pas la syntaxe pour "sauter" un paramètre de l'URL...

Quelqu'un a une idée ?

Merci. :wink:
 
WRInaute accro
Il faut dans ce cas posséder des url uniques par page de contenu. Et en php, un traitement te permettrait dès lors de récupérer un contenu en fonction de son url.
 
Nouveau WRInaute
Je n'ai pas bien compris ce que vous vouliez dire...

Il faudrait que mes titres de pages soient unique, c'est bien ça que vous vouliez dire ?
Si c'est le cas, ils le sont.

Moi, ce que je n'arrive pas à écrire, c'est la syntaxe dans le fichier.htaccess pour sauter un des paramètres de l'url lors de la réécriture...
Savez-vous comment faire ?
 
WRInaute accro
Il faut que dans ta base de donnée, dans la table qui te permet de gérer tes contenus, tu stockes l'url de ce contenu (que tu peux composer à partir de son titre, de manière automatique ou non). Ensuite, l'idée est de rediriger vers une même page qui va traiter ton url et retrouver le contenu qui y est attaché.
 
Nouveau WRInaute
Je vois mieux ce que vous voulez dire.
Avez-vous un exemple de code PHP ?

Ce que je demande sans passer par une page PHP, est-ce possible ou pas ?
 
Discussions similaires
Haut