Url rewriting

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Url rewriting

par TwiSeft » 26 avr. 2005, 16:57

Bonjour,
J'aimerai savoir s'il faut mettre quelque chose avant:

Code : Tout sélectionner

RewriteEngine On
Parce que mon hebergeur me dit qu'il est activée mais quand je met le htaccess cela ne fonctionne pas.

par Xenon_54 » 07 mars 2005, 19:59

La documentation Apache traite de ce genre de cas à cet endroit:
Many servers want to be accessible by more than one name. This is possible with the ServerAlias directive, placed inside the <VirtualHost> section. For example if you add this to the first <VirtualHost> block above

Code : Tout sélectionner

ServerAlias domain.tld *.domain.tld
then requests for all hosts in the domain.tld domain will be served by the www.domain.tld virtual host. The wildcard characters * and ? can be used to match names. Of course, you can't just make up names and place them in ServerName or ServerAlias. You must first have your DNS server properly configured to map those names to an IP address associated with your server.
Liens connexes: ServerAlias directive

Donc à toi d'essayer de baser ta règle de réécriture sur ce "catch-all".

;)

par birslip » 07 mars 2005, 17:12

J'ai eu beau lire la doc etc.. quelqu'un sait comment convertir
http://www.toto.com/index.php?page=support
en http://support.toto.com ?
Je pense que l'on peut y arriver en faisant un peu comme ça:

Code : Tout sélectionner

RewriteEngine On RewriteRule ^http://(.+?).toto.com/(.*) index.php?page=$1 [L]
Mais le code que je viens de donner ne marche pas... :cry:

par fab » 07 mars 2005, 00:46

J'ai eu beau lire la doc etc.. quelqu'un sait comment convertir
http://www.toto.com/index.php?page=support
en http://support.toto.com ?

par Ouaibou » 02 mars 2005, 19:59

Re bonjour,

Hum, j'ai un p'tit problème :

Mon hébergeur accepte l'url rewriting. Je commence donc à faire quelques petits test et ça marche très bien.

Je précise que généralement mes liens sont du type :

Code : Tout sélectionner

index.php?cat=dossier&p=page index.php?p=page
Je converti donc avec l'url rewriting :

Code : Tout sélectionner

RewriteEngine On RewriteRule ^index,([a-z]+),([a-z]+)\.html$ index.php?cat=$1&p=$2 [L] RewriteRule ^index,([a-z]+)\.html$ index.php?p=$1 [L] RewriteRule ^index.html$ index.php [L]
Jusque là ça marche très bien, seulement si je viens à avoir un lien du type :

Code : Tout sélectionner

index.php?cat=classes&p=liste&id_categorie=id
Je rajoute donc le code suivant au .htaccess :

Code : Tout sélectionner

RewriteRule ^index,classes,liste#([0-9]+)\.html$ index.php?cat=classes&p=liste&id_categorie=$1 [L]
Seulement voila une fois que je teste mon lien :
index,classes,liste#id.html

Ca m'affiche une erreur 404 ce qui signifie que mon code marche pas. Je penses que ça vient du fait que j'ai déclaré une réécriture contenant déjà les cat et les p. Seulement je ne sais comment m'y prendre pour que ça marche.

Quelqu'un a t'il déjà été confronté à ce problème ? a t'il une idée ?

Je suis preneur :wink:

Merci

@+

par mere-teresa » 01 mars 2005, 14:25

Pour tous

par Ouaibou » 01 mars 2005, 09:29

Ehe vraiment pas mal l'article proposé par Xenon_54 ;)

thx

par Jerem' » 28 févr. 2005, 00:32

Mon site est hébergé chez online.net donc j'ai aucun accès à la config d'apache c'est ce que je voulais dire :wink:

Je ferai des tests demain :)

par Xenon_54 » 27 févr. 2005, 23:58

Qu'entends-tu par accès aux configurations du serveur?

Si Apache a été compilé avec mod_rewrite (rewrite_module) et que l'administrateur t'a donné les droits d'utilisation des fichiers .htaccess, tu devrais alors avoir la possibilité d'utiliser l'URL rewriting.

Comme l'indique l'article suggéré plus haut, il suffit de tester. Une erreur 500 vous fixera sur le fait que vous n'avez pas accès à l'URL rewriting.

:)

par Jerem' » 27 févr. 2005, 23:36

Concrètement, est-ce qu'il est possible de le faire sans accès aux configurations du serveur ? Hébergement Online.net ou Free.fr par exemple ?

par fab » 27 févr. 2005, 22:08

merci :) je sort ce soir ( quoi comme tous les soirs ) donc demain pour l'article

SPAM :et aussi pour mon article sur phpteam

par Xenon_54 » 27 févr. 2005, 21:58

Tu dois coder ton script comme si tu n'utilisais pas l'URL rewriting. Mais, il faudra planifier le fait que tu devras peut-être modifier quelques liens générés par ton script afin de pouvoir profiter de cette réécriture.

Ensuite, tu commences à planifier son implantation. Cela ne veut pas dire que tu dois modifier la manière dont tu accèdes aux données mais les liens afin d'y accéder.

Exemple:
topic-525.php sera redirigié en fait vers viewtopic.php?t=525

Donc ton fichier d'origine (viewtopic.php) existe toujours et doit toujours accepté le paramètre t afin de récupérer le sujet. Je sais pas si tu comprends un peu le principe.

Article intéressant:
http://www.webmaster-hub.com/publication/article5.html

;)

par fab » 27 févr. 2005, 21:41

Petite question sur le sujet , quand on utilise l'url rewriting rien ne change coté code ? car je suis en plein developpement d'un site ( bientot sur vos écrans j'espere ) et je voudrais savoir si il faut changer quelque chose ou on peut s'occuper de ça en dernier ?

par mere-teresa » 27 févr. 2005, 19:29

pour ma part, je pose mes questions d'URL rewriting chez WebRankInfo - Forums

par Ouaibou » 27 févr. 2005, 11:25

Ehe ok merci j'vais jetter un oeil à ça dès que j'aurais un peu de temps ;)

Ps : C'est pas moi qui est mis le sujet dans actualité.