Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Serveurs (Apache, IIS,...) > Apache
Apache Forum d'entraide Apache. Avant de poster : Cours Apache, FAQ Apache
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/12/2011, 04h24   #1
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 321
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 321
Points : 38
Points : 38
Par défaut problème d'url rewriting

Voici le code que j'ai dans mon .htaccess :

Code :
1
2
3
4
Options +FollowSymlinks
RewriteEngine on 
RewriteRule ^z(.+)$ /tinyurl/url.php?id=$1 [L]
J'ai un dossier tinyurl. Là dans l'exemple ci-dessus, çà me redirige tout ce qui commence par la lettre z vers url.php?id= en repassant dans id la valeur après le z (concrètement c'est ce qui se produit)
Je voudrais faire ceci : http://www.mondomaine.com/tinyurl/azerty
renvoie vers http://www.mondomaine.com/tinyurl/url.php?id=azerty
Comment est-ce possible ?
Sachant que je veux passer toute la valeur (ici c'est azerty mais quelquesoit ce qu'on entre çà redirige vers url.php en rebasculant la valeur dans l'id)
Après on m'a dit qu'il faut prévoir quelquechose pour que url.php ne soit pas réécrit aussi et donc ajouter une règle indiquant qu'il ne doit pas être pris en compte ce qui est logique sinon çà boucle

Si quelqu'un a déjà fait ce que j'essaie de faire, ce serait sympa de m'aiguiller.
Je cherche à créer un service qui réduit les url pour afficher sur twitter notamment

Merci d'avance
pas30 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2011, 12h01   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 299
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 299
Points : 8 583
Points : 8 583
Question idiote de principe : tu as essayé de remplacer ton z par tinyurl/ ?
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2011, 16h21   #3
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 321
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 321
Points : 38
Points : 38
Oui j'ai évidemment essayé çà ne marche pas
pas30 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2011, 22h48   #4
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 299
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 299
Points : 8 583
Points : 8 583
Bon, j'ai testé. Le problème vient du fait que l'URL réécrite commence par un /. Je ne sais pas trop pourquoi mais si tu retires le / devant l'URL réécrite, ça marche :
Code :
RewriteRule ^tinyurl/(.+)$ tinyurl/url.php?id=$1 [L]
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 02h10   #5
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 321
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 321
Points : 38
Points : 38
Comment tu as fait le test car de mon côté çà pose toujours souci
On est d'accord que le .htaccess est dans le dossier tinyurl ?
Moi avec ce code çà marche pas
Code :
RewriteRule ^tinyurl/(.+)$ tinyurl/url.php?id=$1 [L]
pas30 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/01/2012, 14h57   #6
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 299
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 299
Points : 8 583
Points : 8 583
Justement non : si tu mets le .htaccess dans tinyurl il faut le retirer de RewriteRule :
Code :
RewriteRule (.+) url.php?id=$1 [L]
Ca devrait fonctionner tout aussi bien.

Pour mon test, étant donnés tes premières explications, il m'a semblé clair que le .htaccess que tu utilisais était à la racine de ton site alors je suis parti sur ce principe pour ne pas trop bousculer ton approche.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 15h47   #7
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 321
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 321
Points : 38
Points : 38
Ne va-t-il pas essayer de réécrire l'url et donc boucler lorsque url.php sera appelé (url.php sera à la racine du serveur)
pas30 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2012, 21h48   #8
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 299
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 299
Points : 8 583
Points : 8 583
Eh bien on essaie et on voit si ça boucle. Il se peut que ça ne boucle pas pour la même raison pour laquelle mon test à la racine fonctionnait sans boucler.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 21h29   #9
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 321
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 321
Points : 38
Points : 38
Alors j'ai créé un domaine et maintenant je met le htaccess à la racine du serveur pour plus de facilité :

Code :
1
2
3
RewriteEngine on
RewriteRule ^([0-9]*)$ /url.php?id=$1 [L]
J'ai mis çà et çà redirige bien désormais mais uniquement les chiffres et je voudrais rediriger tout, j'avais essayé ton code (.+) mais çà ne marche pas
pas30 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2012, 21h39   #10
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 299
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 299
Points : 8 583
Points : 8 583
Besoin de relire la discussion, peut-être :
Citation:
Envoyé par _Mac_ Voir le message
Le problème vient du fait que l'URL réécrite commence par un /. Je ne sais pas trop pourquoi mais si tu retires le / devant l'URL réécrite, ça marche
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h23.


 
 
 
 
Partenaires

Hébergement Web