Aller au contenu

URL Rewriting en gros


Sujets conseillés

Posté

Salutation,

Pour commancer, mon hebergeur support le mod_rewriting et le php5 donc, pas de probleme de ce coté là.

Cela dit, je n'ai pas drois a l'erreur car meme si mon hebergeur accepte le rewriting, ces serveurs cache les .htaccess, donc si je fais une connerie, je risque de ne pas retrouver mes .htaccess meme via un logiciel FTP.

donc ...

J'en ai lu des tonnes d'articles... donc, si j'ai bien compris (je prends en compte le cache)...

le code à mettre dans un .htaccess est ça :

Code:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME}\.cache -f
RewriteRule ([^.]+)\.html$ /$1.html.cache [L]
RewriteRule ([^.]+)\.html$ /page.php?page=$1 [L]

---------------------------------------------------

Si mes liens sont dans le genre : "mon_site.com/index.php?jour=1" mon code devient comme ça???? :whistling:

Code:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME}\.cache -f
RewriteRule ([^.]+)\.html$ /$1.html.cache [L]
RewriteRule ([^.]+)\.html$  /index.php?jour=$1 [L]

Comment faire pour introduit dans mes URL (html) les titres genre "article" "musique" "journee" ... etc

---------------------------------------------------

dans le cas où j'ai:

monsite.com/redaction/~auteur/index.php?article=10

je mets ça? :unsure:

Code:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME}\.cache -f
RewriteRule ([^.]+)\.html$ /$1.html.cache [L]
RewriteRule ([^.]+)\.html$ /redaction/~auteur/index.php?article=$1 [L]

-------------------------------------------------

:wacko:

Autre chose, est ce que je dois mettre dans chaque repertoire un .htaccess?

-------------------------------------------------

:huh: Comment faire (exactement et par la plus simple des methodes ) convertire les sites "site.com" en "www.site.com"??.

-------------------------------------------------

Merci d'avance pour vos réponses,

Bien cordialement.

M.K.

Posté

Salut Moonwar,

Comment fais-tu pour exécuter la deuxième ligne dans :

RewriteRule ([^.]+)\.html$ /$1.html.cache [L]
RewriteRule ([^.]+)\.html$ /page.php?page=$1 [L]

Comme l'expression recherchée dans ces deux règles est identique, la deuxième ne sera jamais exécutée.

Globalement, tes questions ne sont pas claires... que veux-tu faire ?

Une réponse précise toutefois, à ta dernière question:

RewriteCond %{HTTP_HOST} !www.site.com$
RewriteRule (.*) http://www.site.com/$1 [R=301,L]

Dan

Posté

Salut Dan

j'en profite pour te remercier d'avoir editer les URLs de mes messages ;)

Pas de probleme, on va oublier le cache :boude: mais juste pour precision sur cette ligne!!! je cite l'article de developpez.com ci-joint l'URL

RewriteEngine on 
#Si la page.cache existe :
RewriteCond %{REQUEST_FILENAME}\.cache -f
#on réécrit son url:
RewriteRule ([^.]+)\.html$ /$1.html.cache [L]
#et du fait du [L], on se serait arrêté là si elle existait.
#sinon, on exécute le script page.php en passant le nom de la page demandée en paramètre :
RewriteRule ([^.]+)\.html$ /page.php?page=$1 [L]

---------------------------------------

Pour les questions, et bien ... est-ce que mes ecritures sont justes ?

Je vous donne l'ULR d'origine avec le rewriting qui va avec, et corrigez-moi si je fais une connerie :unsure: .

En gros, j'ai plusieurs types d'ecritures des URLs, cela est du au fait que j'ecrits mes pages sur bloc notes :wacko: pour eviter tout probleme de license ...

1- Pour le type: "mon_site.com/index.php?jour=1"

Est-ce juste de mettre ce code?

RewriteEngine on 
RewriteRule ([^.]+)\.html$  /index.php?jour=$1 [L]

2- Pour le type: "monsite.com/redaction/~auteur/index.php?article=10"

Est-ce juste de mettre ce code?

RewriteEngine on 
RewriteRule ([^.]+)\.html$ /redaction/~auteur/index.php?article=$1 [L]

3- Est-ce que je dois ajouter un fichier .htaccess dans tout repertoire de mes sites ou un seul a la racine suffirait?

4- Dans mes repertoire, j'ai nommé tout les liens suivant le sujet. je m'explique

Per exemple pour la partie Musique, j'ai "monsite.com/.../.../musique/index.php?

chanson=10

Pour la partie Sport; j'ai mis "monsite.com/.../sport/foot/index.php?

journée=10

J'aimerais savoir comment faire afin de retrouver les thèmes dans mes ULR réécrits en HTML.

Merci pour:

RewriteCond %{HTTP_HOST} !www.site.com$
RewriteRule (.*) http://www.site.com/$1 [R=301,L]

J'espere que ça marche avec OVH.com et CeleoNet.fr

Merci d'avance pour vos réponses :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...