Redirection racine vers dossier

Discussion sur le mod rewrite d'Apache : .htaccess, utilisation, expériences... Réécriture d'URL (URL rewriting).

Modérateur: Modérateurs

Messagede dcz » Sam Nov 04, 2006 8:29 am

Ahh, et bien c'est tout simplement ça alors on dirait.
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Publicité

Messagede Macallan » Sam Nov 04, 2006 8:50 am

Je viens de poster sur leur forum, une suggestion d'apres les threads que j'ai lu c'est qu'il manquerait un fichier à la racine (un index.php par ex), j'attends confirmation mais ce qui est certain c'est que les URL rewriting fonctionnent la follow symlinks non par contre.
Macallan
 
Messages: 12
Inscription: Mar Oct 31, 2006 1:41 am

Messagede dcz » Sam Nov 04, 2006 8:52 am

Faut voir, au pire il faudra faire ça avec du php.

Genre un doublon de chaque fichier du forum à la racine qui redirige dans le dossier vers son équivalent.


++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede Macallan » Dim Nov 05, 2006 11:00 am

Voici ce qu'on m'a suggéré de faire :

Code: Tout sélectionner
RewriteEngine on
RewriteCond %(REQUEST_URI) !^/forum [NC]
RewriteRule ^/$ /forum/ [L]


En copiant les fichiers index et settings à la racine tout fonctionne bien!
Macallan
 
Messages: 12
Inscription: Mar Oct 31, 2006 1:41 am

Messagede dcz » Dim Nov 05, 2006 12:03 pm

Oui, mais là tu perd les URI.

J'essayai de te faire parvenir à un truc :

www.example.com/page.php?var=xx&var2=yy => www.example.com/forum/page.php?var=xx&var2=yy

Là tu aura :
www.example.com/page.php?var=xx&var2=yy => www.example.com/forum/

Ce qui est dommage pour le référencement, car cela va écraser tout tes éventuelles anciennes page en cache et de plus les moteurs de recherches ne sont pas très friand de redirection massives de cette sore (bcp de liens vers un seul).

Ce que je pense, c'est que ton forum doit utiliser des scripts pour chaque type de pages, et qu'une solution efficace serait de faire une copie de chacun de ces fichiers important à la racine de ton domaine, et d'y faire la redirection en php, avec conservation de l'URI, vers les nouvelles URLs.

Pour cela, il me faudrait le nom de chaque script correspondant à chaque type de page (index, catégorie le cas échéant, forum et sujet) avec un URL type pour chaque (pour phpBB ce serait viewtopic.php?t=xx etc ..)

Et /ou un lien vers ton site.

Et je te fait ça ;)

++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede Macallan » Dim Nov 05, 2006 12:21 pm

Exact, je viens de me rendre compte des nouvelles URL, c'est pas top top...

Après avoir déplacé les fichiers index et settings à la racine tout est ok avec ta solution également :
Code: Tout sélectionner
RewriteEngine on
RewriteBase /
RewriteRule ^([^forum/].+)(.*)$  http://www.example.com/forums/$2 [QSA,L,R=301]



Ce qui est impeccable!

Merci pour ta propale de ref, mais te casse pas la tête, pour l'instant le forum n'a pas vocation à être orienté grand public, peut-etre plus tard si me sidées germent, je verrai alors ;)

Merci pour ton coup de main en tout cas!
Macallan
 
Messages: 12
Inscription: Mar Oct 31, 2006 1:41 am

Messagede dcz » Dim Nov 05, 2006 12:25 pm

Ahh, me voilà rassuré :D

Et de rien ;)

++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede vee » Mar Nov 07, 2006 10:20 pm

Alors l'idée est que je me serve du .htaccess pour la redirection, et non du <meta http-equiv=refresh content="0; URL=... de l'index ? (question 1)

Etant hebergée chez OVH, pouvez vous me donner une piste sur le code à mettre pour que ca marche de la manière la plus simple possible ? (question 2)

Que dois je faire de mon index.html à la racine après ? Virer le code de redirection et le laisser vierge ou "on s'en fout" ? (question 3)

rappel: mon forum est dans le dossier www.mon_site.com/f0rum/

mille merciS !
vee
PR0
PR0
 
Messages: 94
Inscription: Mar Nov 07, 2006 7:19 am
Localisation: France

Messagede dcz » Mar Nov 07, 2006 11:35 pm

Code: Tout sélectionner
RewriteEngine on
RewriteBase /
RewriteRule ^([^f0rum/].+)$  http://www.example.com/f0rums/index.php [QSA,L,R=301]


Dans le .htaccess à la racine ;)

Ça devrais aussi marcher si tu ajoutes les rewriterules du forum à la suite.

Une redirection http 301 c'est ce qu'il faut pour que tout le monde comprenne que c'est bien -http://www.example.com/f0rums/index.php qui est l'accueil de ton site.
Cette redirection impose le même résultat pour tout le monde, un peut différent de la précédente qui fait migrer des URLs vers un dossier.

++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede vee » Mer Nov 08, 2006 12:01 am

merci dcz ;)

Lorsque j'utilise cette syntaxe dans le .htaccess, en laissant tel quel l'index.html, je tombe sur l'index de mon site (sous forme d'explorateur).
Donc l'index.html n'est plus pris en considération, puisque la redirection ne se fait plus, mais comme elle ne se fait pas c'est que le .htaccess lui, ne fait pas son boulot :P
vee
PR0
PR0
 
Messages: 94
Inscription: Mar Nov 07, 2006 7:19 am
Localisation: France

Messagede dcz » Mer Nov 08, 2006 12:03 am

Et avec
Code: Tout sélectionner
RewriteEngine on
RewriteBase /
RewriteCond    %{REQUEST_FILENAME}  !-f
RewriteCond    %{REQUEST_FILENAME}  !-d
RewriteRule ^([^f0rum/].+)$  http://www.example.com/f0rums/index.php [QSA,L,R=301]


Et aussi en effaçant index.html pour voir.

++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede vee » Mer Nov 08, 2006 12:24 am

pareil:

Index of /

Attends attends, j'ai par contre un truc qui traine juste en dessous de
Code: Tout sélectionner
RewriteEngine on
RewriteBase /

c'est un truc que j'ai du mettre surement à l'install de ... webmedic, hum :P
Code: Tout sélectionner
RewriteCond %{HTTP_HOST} !^www.example\.com [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,R=301,L]

donc ca pose surement probleme de mettre ta syntaxe en laissant celle là :D
vee
PR0
PR0
 
Messages: 94
Inscription: Mar Nov 07, 2006 7:19 am
Localisation: France

Messagede dcz » Mer Nov 08, 2006 9:17 am

Ahh bah oui,

Il faut pas démarrer deux fois le mod rewrite.

Essai un truc comme :
Code: Tout sélectionner
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.example\.com [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,R=301,L]
#
# Ici tu mets les rewriterules pour le forum
#
RewriteCond    %{REQUEST_FILENAME}  !-f
RewriteCond    %{REQUEST_FILENAME}  !-d
RewriteRule ^([^f0rum/].+)$  http://www.example.com/f0rums/index.php [QSA,L,R=301]


++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

Messagede vee » Mer Nov 08, 2006 2:22 pm

J'arrive pas à atteindre l'index du forum.

Si je supprime l'index.html de mon site, je tombe sur "Index of /" avec la liste de tous mes fichiers et dossiers.
En revanche si je laisse mon index.html, la redirection se fait. Donc j'en conclue que le code du .htaccess n'a aucun impact :/

Voici mon .htaccess au complet:
Code: Tout sélectionner
Options +FollowSymlinks
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]

# FORUM PROTECTION RULE
RewriteRule ^f0rum/.+/([^/]+\.html)$ /f0rum/index.php [R=301,L]
# CATEGORIES
RewriteRule ^f0rum/.+-vc([0-9]+)\.html$ /f0rum/index.php?c=$1 [QSA,L]
# PAGINATED FORUM
RewriteRule ^f0rum/.+-vf([0-9]+)-([0-9]+)\.html$ /f0rum/viewforum.php?f=$1&start=$2 [QSA,L]
# FORUM
RewriteRule ^f0rum/.+-vf([0-9]+)\.html$ /f0rum/viewforum.php?f=$1 [QSA,L]
# PAGINATED TOPIC
RewriteRule ^f0rum/topic([0-9]+)-([0-9]+)\.html$ /f0rum/viewtopic.php?t=$1&start=$2 [QSA,L]
# TOPIC
RewriteRule ^f0rum/topic([0-9]+)\.html$ /f0rum/viewtopic.php?t=$1 [QSA,L]
# POST
RewriteRule ^f0rum/post([0-9]+)\.html$ /f0rum/viewtopic.php?p=$1 [QSA,L]
#PROFILES
RewriteRule ^f0rum/membre([0-9]+)\.html$ /f0rum/profile.php?mode=viewprofile&u=$1 [QSA,L]

RewriteRule ^f0rum/sitemaps.xml$ /f0rum/sitemap.php [L]
RewriteRule ^f0rum/forum-sitemap-([0-9]+).xml$ /f0rum/sitemap.php?fid=$1 [L]
RewriteRule ^f0rum/sitemap-forum.xml$ /f0rum/sitemap.php?forum [L]

RewriteCond    %{REQUEST_FILENAME}  !-f
RewriteCond    %{REQUEST_FILENAME}  !-d
RewriteRule ^([^f0rum/].+)$  http://www.example.com/f0rums/index.php [QSA,L,R=301]

en remplaçant les "example" par mon site..
Je sais pas si j'ai fait les choses correctement :roll:
vee
PR0
PR0
 
Messages: 94
Inscription: Mar Nov 07, 2006 7:19 am
Localisation: France

Messagede dcz » Mer Nov 08, 2006 9:18 pm

Et bien si.

Essai simplement :

Code: Tout sélectionner
Options +FollowSymlinks
RewriteEngine On
RewriteBase /

RewriteRule ^([^f0rum/].+)$  http://www.example.com/f0rums/index.php [QSA,L,R=301]
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]

# FORUM PROTECTION RULE
RewriteRule ^f0rum/.+/([^/]+\.html)$ /f0rum/index.php [R=301,L]
# CATEGORIES
RewriteRule ^f0rum/.+-vc([0-9]+)\.html$ /f0rum/index.php?c=$1 [QSA,L]
# PAGINATED FORUM
RewriteRule ^f0rum/.+-vf([0-9]+)-([0-9]+)\.html$ /f0rum/viewforum.php?f=$1&start=$2 [QSA,L]
# FORUM
RewriteRule ^f0rum/.+-vf([0-9]+)\.html$ /f0rum/viewforum.php?f=$1 [QSA,L]
# PAGINATED TOPIC
RewriteRule ^f0rum/topic([0-9]+)-([0-9]+)\.html$ /f0rum/viewtopic.php?t=$1&start=$2 [QSA,L]
# TOPIC
RewriteRule ^f0rum/topic([0-9]+)\.html$ /f0rum/viewtopic.php?t=$1 [QSA,L]
# POST
RewriteRule ^f0rum/post([0-9]+)\.html$ /f0rum/viewtopic.php?p=$1 [QSA,L]
#PROFILES
RewriteRule ^f0rum/membre([0-9]+)\.html$ /f0rum/profile.php?mode=viewprofile&u=$1 [QSA,L]

RewriteRule ^f0rum/sitemaps.xml$ /f0rum/sitemap.php [L]
RewriteRule ^f0rum/forum-sitemap-([0-9]+).xml$ /f0rum/sitemap.php?fid=$1 [L]
RewriteRule ^f0rum/sitemap-forum.xml$ /f0rum/sitemap.php?forum [L]


Pour voir, et de préférence quand il y a pas trop de monde si ça bloque ton forum, même momentanément, ce qui est pas bien grave.

++
Useful links :
SEO Forum || SEO Directory || SEO phpBB || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Recherche
dcz
Admin
Admin
 
Messages: 21376
Inscription: Ven Avr 28, 2006 9:03 pm

PrécédenteSuivante

Retourner vers mod rewrite Apache

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Bing [Bot] et 1 invité