| Auteur |
Message |
Vil Admin Méchant
Messages: 11959
Tutoriaux : 64
|
Posté le:
Mar 23 Nov 2004 19:28 Sujet : [Référencement] URL REWRITING |
  |
Bonjour
vous avez remarqué les urls de ce forum, ceci est l'effet de url rewriting pour ceux qui ne
connaissent pas.
Cette méthode facilite fortement le référencement sur google bien entendu si ce dernier passe vous
rendre visite.
Pour le cas de ce forum il passe régulièrement et pour preuve.
On va surveiller ce nouveau topic pour voir en combien de temps il va être référencer.
Voici le code que j'utilise sur phpBB 2.0.10
L'auteur de ce code est Twister.
Aucun bug depuis son installation.
| Code: | #
#-----[ OUVRIR ]---------------------------------------------
#
includes/sessions.php
#
#-----[ TROUVER ]---------------------------------------------
#
$SID = 'sid=' . $session_id;
#
#-----[ REMPLACER PAR ]---------------------------------------
#
if ( est_robot() && REFERENCEMENT_BOOST ){ //if ajouté pour
supprimer les sessions pour les robots
$SID = '';
}else{
$SID = 'sid=' . $session_id;
}
#
#-----[ TROUVER ]---------------------------------------------
#
function append_sid($url, $non_html_amp = false)
{
global $SID;
if ( !empty($SID) && !preg_match('#sid=#', $url)
)
{
$url .= ( ( strpos($url, '?') != false ) ? (
( $non_html_amp ) ? '&' : '&' ) : '?' ) . $SID;
}
return $url;
}
Remplacer par
function append_sid($url, $non_html_amp = false) //fonction modifiée pour
l'url-rewriting
{
global $SID;
if ( !empty($SID) && !preg_match('#sid=#', $url)
)
{
$url .= ( ( strpos($url, '?') != false ) ? (
( $non_html_amp ) ? '&' : '&' ) : '?' ) . $SID;
}
if ( REFERENCEMENT_BOOST )
{
$url = url_rewrite( $url );
}
return $url;
}
//Fonction qui vérifie si le visiteur est un robot comme google
function est_robot() {
global $HTTP_SERVER_VARS;
$RobotsList = array (
"antibot",
"appie",
"architext",
"bjaaland",
"digout4u",
"echo",
"fast-webcrawler",
"ferret",
"googlebot",
"gulliver",
"harvest",
"htdig",
"ia_archiver",
"jeeves",
"jennybot",
"linkwalker",
"lycos",
"mercator",
"moget",
"muscatferret",
"myweb",
"netcraft",
"nomad",
"petersnews",
"scooter",
"slurp",
"unlost_web_crawler",
"voila",
"voyager",
"webbase",
"weblayers",
"wget",
"wisenutbot",
"acme.spider",
"ahoythehomepagefinder",
"alkaline",
"arachnophilia",
"aretha",
"ariadne",
"arks",
"aspider",
"atn.txt",
"atomz",
"auresys",
"backrub",
"bigbrother",
"blackwidow",
"blindekuh",
"bloodhound",
"brightnet",
"bspider",
"cactvschemistryspider",
"cassandra",
"cgireader",
"checkbot",
"churl",
"cmc",
"collective",
"combine",
"conceptbot",
"coolbot",
"core",
"cosmos",
"cruiser",
"cusco",
"cyberspyder",
"deweb",
"dienstspider",
"digger",
"diibot",
"directhit",
"dnabot",
"download_express",
"dragonbot",
"dwcp",
"e-collector",
"ebiness",
"eit",
"elfinbot",
"emacs",
"emcspider",
"esther",
"evliyacelebi",
"nzexplorer",
"fdse",
"felix",
"fetchrover",
"fido",
"finnish",
"fireball",
"fouineur",
"francoroute",
"freecrawl",
"funnelweb",
"gama",
"gazz",
"gcreep",
"getbot",
"geturl",
"golem",
"grapnel",
"griffon",
"gromit",
"hambot",
"havindex",
"hometown",
"htmlgobble",
"hyperdecontextualizer",
"iajabot",
"ibm",
"iconoclast",
"ilse",
"imagelock",
"incywincy",
"informant",
"infoseek",
"infoseeksidewinder",
"infospider",
"inspectorwww",
"intelliagent",
"irobot",
"iron33",
"israelisearch",
"javabee",
"jbot",
"jcrawler",
"jobo",
"jobot",
"joebot",
"jubii",
"jumpstation",
"katipo",
"kdd",
"kilroy",
"ko_yappo_robot",
"labelgrabber.txt",
"larbin",
"legs",
"linkidator",
"linkscan",
"lockon",
"logo_gif",
"macworm",
"magpie",
"marvin",
"mattie",
"mediafox",
"merzscope",
"meshexplorer",
"mindcrawler",
"momspider",
"monster",
"motor",
"mwdsearch",
"netcarta",
"netmechanic",
"netscoop",
"newscan-online",
"nhse",
"northstar",
"occam",
"octopus",
"openfind",
"orb_search",
"packrat",
"pageboy",
"parasite",
"patric",
"pegasus",
"perignator",
"perlcrawler",
"phantom",
"piltdownman",
"pimptrain",
"pioneer",
"pitkow",
"pjspider",
"pka",
"plumtreewebaccessor",
"poppi",
"portalb",
"puu",
"python",
"raven",
"rbse",
"resumerobot",
"rhcs",
"roadrunner",
"robbie",
"robi",
"robofox",
"robozilla",
"roverbot",
"rules",
"safetynetrobot",
"search_au",
"searchprocess",
"senrigan",
"sgscout",
"shaggy",
"shaihulud",
"sift",
"simbot",
"site-valet",
"sitegrabber",
"sitetech",
"slcrawler",
"smartspider",
"snooper",
"solbot",
"spanner",
"speedy",
"spider_monkey",
"spiderbot",
"spiderline",
"spiderman",
"spiderview",
"spry",
"ssearcher",
"suke",
"suntek",
"sven",
"tach_bw",
"tarantula",
"tarspider",
"techbot",
"templeton",
"teoma_agent1",
"titin",
"titan",
"tkwww",
"tlspider",
"ucsd",
"udmsearch",
"urlck",
"valkyrie",
"victoria",
"visionsearch",
"vwbot",
"w3index",
"w3m2",
"wallpaper",
"wanderer",
"wapspider",
"webbandit",
"webcatcher",
"webcopy",
"webfetcher",
"webfoot",
"weblinker",
"webmirror",
"webmoose",
"webquest",
"webreader",
"webreaper",
"websnarf",
"webspider",
"webvac",
"webwalk",
"webwalker",
"webwatch",
"whatuseek",
"whowhere",
"wired-digital",
"wmir",
"wolp",
"wombat",
"worm",
"wwwc",
"wz101",
"xget",
"awbot",
"bobby",
"boris",
"bumblebee",
"cscrawler",
"daviesbot",
"ezresult",
"gigabot",
"gnodspider",
"internetseer",
"justview",
"linkbot",
"linkchecker",
"nederland.zoek",
"perman",
"pompos",
"psbot",
"redalert",
"shoutcast",
"slysearch",
"ultraseek",
"webcompass",
"yandex",
"robot",
"crawl"
);
$botID = strtolower( $HTTP_SERVER_VARS['HTTP_USER_AGENT'] );
for ($i = 0; $i < count( $RobotsList ); $i++)
{
if ( strstr( $botID, $RobotsList[$i] ) )
{
return true;
}
}
return false;
}
//fonction qui réécrit l'url des pages de lecture
function url_rewrite($url){
$inf_url = parse_url( html_entity_decode( $url ) );
$get_url = array();
parse_str( $inf_url['query'], $get_url );
//index.php
if ( substr_count( $inf_url['path'], "index" ) == 1
){
//les catégories
if ( count( $get_url ) == 1 && isset(
$get_url['c'] )){
return 'categorie-'.$get_url['c'].'.html';
}
}
//viewforum.php
if ( substr_count( $inf_url['path'], "viewforum" ) == 1
){
//le numéro du forum seul
if ( count( $get_url ) == 1 && isset(
$get_url['f'] )){
return 'forum-'.$get_url['f'].'.html';
}
//f, topicdays et start
if ( count( $get_url ) == 3 && isset(
$get_url['f'] ) && isset( $get_url['topicdays'] ) &&
isset( $get_url['start'] ) ){
return
'forum-'.$get_url['f'].'-'.$get_url['topicdays'].'-'.$get_url['start'].'.htm
l';
}
}
//viewtopic.php
if ( substr_count( $inf_url['path'], "viewtopic" ) == 1
){
//le numéro du sujet seul
if ( count( $get_url ) == 1 && isset(
$get_url['t'] )){
return 'sujet-'.$get_url['t'].'.html';
}
//le numéro du sujet seul avec p
if ( count( $get_url ) == 1 && isset(
$get_url['p'] )){
return 'vsujet-'.$get_url['p'].'.html';
}
//sujet précédent ou suivant
if ( count( $get_url ) == 2 && isset(
$get_url['t'] ) && isset( $get_url['view'] ) ){
if ( $get_url['view'] == 'previous' ){
return 'prec-sujet-'.$get_url['t'].'.html';
}elseif ( $get_url['view'] == 'next' ){
return 'suiv-sujet-'.$get_url['t'].'.html';
}
}
//le numéro du sujet et start
if ( count( $get_url ) == 2 && isset(
$get_url['t'] ) && isset( $get_url['start'] ) ){
return
'sujet-'.$get_url['t'].'-'.$get_url['start'].'.html';
}
//le numéro du sujet et postdays et postorder et start
if ( count( $get_url ) == 4 && isset(
$get_url['t'] ) && isset( $get_url['start'] ) &&
isset( $get_url['postdays'] ) && isset( $get_url['postorder']
) ){
return
'sujet-'.$get_url['t'].'-'.$get_url['start'].'-'.$get_url['postdays'].'-'.$g
et_url['postorder'].'.html';
}
//le numéro du sujet et postdays et postorder et start et highlight
if ( count( $get_url ) == 5 && isset(
$get_url['t'] ) && isset( $get_url['start'] ) &&
isset( $get_url['postdays'] ) && isset( $get_url['postorder']
) && isset( $get_url['highlight'] ) ){
return
'sujet-'.$get_url['t'].'-'.$get_url['start'].'-'.$get_url['postdays'].'-'.$g
et_url['postorder'].'('.urlencode($get_url['highlight']).').html';
}
}
//profile.php
if ( substr_count( $inf_url['path'], "profile" ) == 1
){
//mode=viewprofile et num du profil
if ( count( $get_url ) == 2 && isset(
$get_url['mode'] ) && $get_url['mode'] == "viewprofile"
&& isset( $get_url['u'] ) ){
return 'profil-'.$get_url['u'].'.html';
}
}
return $url;
}
|
Pour activer ou desactiver url rewriting
| Code: |
#
#-----[ OUVRIR ]---------------------------------------------
#
includes/constants.php
#
#-----[ TROUVER ]---------------------------------------------
#
// Session parameters
define('SESSION_METHOD_COOKIE', 100);
define('SESSION_METHOD_GET', 101);
#
#-----[ APRES, AJOUTER ]------------------------------------------
#
//amélioration du référencement : suppression des sessid pour les robots et url-rewriting
define('REFERENCEMENT_BOOST', true); |
Si vous définissez la constante précédente à faux, remplacez le code précédent par
| Code: |
//amélioration du référencement : suppression des sessid pour les robots et url-rewriting
define('REFERENCEMENT_BOOST',false);
|
Uploadez un fichier .htaccess dans la racine de votre
forum, avec ce code.
| Code: | RewriteEngine On
RewriteRule ^index\-([0-9]*)\.html$ index.php?c=$1 [L]
RewriteRule ^forum\-([0-9]*)\.html$ viewforum.php?f=$1 [L]
RewriteRule
^forum\-([0-9]*)\-([0-9]*)\-([0-9]*)\.html$
viewforum.php?f=$1&topicdays=$2&start=$3 [L]
RewriteRule ^sujet\-([0-9]*)\.html$ viewtopic.php?t=$1 [L]
RewriteRule ^sujet\-([0-9]*)\-([0-9]*)\.html$
viewtopic.php?t=$1&start=$2 [L]
RewriteRule ^sujet\-([0-9]*)\(([^()]*)\)\.html$
viewtopic.php?t=$1&highlight=$2 [L]
RewriteRule
^sujet\-([0-9]*)\-([0-9]*)\-([0-9]*)\-([a-zA
-Z]*)\.html$ viewtopic.php?t=$1&start=$2&postdays=$3&postorder=$4 [L]
RewriteRule
^sujet\-([0-9]*)\-([0-9]*)\-([0-9]*)\-([a-zA
-Z]*)\(([^()]*)\)\.html$
viewtopic.php?t=$1&start=$2&postdays=$3&postorder=$4&highlight=$5 [L]
RewriteRule ^vsujet\-([0-9]*)\.html$ viewtopic.php?p=$1 [L]
RewriteRule ^prec\-sujet\-([0-9]*)\.html$ viewtopic.php?t=$1&view=previous
[L]
RewriteRule ^suiv\-sujet\-([0-9]*)\.html$ viewtopic.php?t=$1&view=next
[L]
RewriteRule ^profil\-([0-9]*)\.html$ profile.php?mode=viewprofile&u=$1
[L] |
Toujours dans la racine un fichier robots.txt
| Code: | Disallow:
/répertoire de votre forum/sutra*.html$
Disallow: /répertoire de votre forum/ptopic*.html$
Disallow: /répertoire de votre forum/ntopic*.html$
Disallow: /répertoire de votre forum/ftopic*asc*.html$ |
( rédigé par setdepic ) |
_________________ - Mettez vos sujets en [Résolu] une fois votre problème réglé
- Galerie photo
- DeviantArt Gallery |
|
    |
 |
Neurone isolé
Messages: 3
Tutoriaux : 0
|
Posté le:
Dim 05 Déc 2004 01:03 Sujet : [Référencement] URL REWRITING |
  |
Slt
Excuse moi, mais tu parles de Google, et si il passe ou pas sur le forum !!
Mais il peux passer sur n'importe quel forum si il tombe sur un mode de recherche non ?
Sinon, pour ce passage :
=> Pour activer ou desactiver url rewriting
il ajoute un bouton "activer", "desactiver" ?
et pour les fichiers à mettre à la racine, on le nome "robots.txt" ??
Merci et bon week, @+, slt  |
_________________
 |
|
    |
 |
Vil Admin Méchant
Messages: 11959
Tutoriaux : 64
|
Posté le:
Dim 05 Déc 2004 11:33 Sujet : [Référencement] URL REWRITING |
  |
Non, il ne rajoute pas de bouton
Si tu le désactive, tu auras des url de type
| Code: | | http://www.aidoforum.com/forum/viewtopic.php?t=1697 |
Alors que si tu l'active, les url seront de type
| Code: | | http://www.aidoforum.com/forum/vsujet-18383.html |
Et google préfère  |
|
|
    |
 |
Carte Mère
Messages: 925
Tutoriaux : 0
|
Posté le:
Dim 05 Déc 2004 12:08 Sujet : [Référencement] URL REWRITING |
  |
Et les url type :
| Code: | | http://www.aidoforum.com/forum/viewtopic.php?t=1697 |
Ca marche toujours après, une fois qu'on a activé ca ?
edit: j'avais juste à essayer le lien..... (boulet ?! )
Ouais donc ca marche ! mais par contre ca ne renomme pas si on accède par un lien comme ca ! Mais
ca, c'est pas grave, vuque c'est pour google !!!  |
_________________

Dernière édition par Pouette Man le Dim 05 Déc 2004 12:11; édité 1 fois |
|
    |
 |
Barrette de RAM
Messages: 16
Tutoriaux : 0
|
Posté le:
Lun 27 Déc 2004 16:11 Sujet : [Référencement] URL REWRITING |
  |
Bonjour tout le monde !
Je suis tout nouveau sur se forum et j'ai grand besoin d'aide pour le mien.
Je croi que le mieu c'est de commencer par voir s'il est possible de le référencer sinon y'a pas
vraiment d'intéré à avoir un forum.
J'ai lu ici que ce n'été pas possible de référencer un forum hébergé gratuitement. Pour
vérifier, j'ai fait le fichier .htaccess et en éffet, ca me met qu'il y a une érreur. Pourtant, ici
vous ne semblé pas en parler donc j'ai un doute.
info : je suis hébergé par LaPoste gratuitement et j'ai choisi LaPoste pour ne pas soufrir de le
pub. (ici)
Je serais ravi d'avoir des expliquations très prochainement. Merci à tous ! |
|
|
     |
 |
Vil Admin Méchant
Messages: 11959
Tutoriaux : 64
|
Posté le:
Lun 27 Déc 2004 17:26 Sujet : [Référencement] URL REWRITING |
  |
Tu n'as pas besoin d'un URL rewriting pourêtre référencé :
Regarde , des tout à fait être référencé ( regarde les URLs
) !
Il n'y a pas de problème, l'URL Rewriting fait juste un certain bien  |
|
|
    |
 |
Barrette de RAM
Messages: 16
Tutoriaux : 0
|
Posté le:
Lun 27 Déc 2004 18:08 Sujet : [Référencement] URL REWRITING |
  |
Bien vu !
Mais alors pourquoi dans le lien que je donne^^, il nous parle d'un problème s'il n'existe pas de
problème ? Pour payer un hébergeur ? Google à remédi au problème ?
Donc là, si j'ai bien compris, j'ai juste à attendre que google passe sur le forum ? Il va
référencer toutes les pages de forum ou seulement quelques unes en particulié ?
Merci Pouzy !  |
|
|
     |
 |
Vil Admin Méchant
Messages: 11959
Tutoriaux : 64
|
Posté le:
Lun 27 Déc 2004 18:24 Sujet : [Référencement] URL REWRITING |
  |
Google peut quand même référencer les PhpBB normaux, mais ils seront moins bien référencés que les
rewrités
Mais pour le nombre de pages, ça dépend de ton PageRank ... Si tu es sur WRI, tu devrais savoir ce
que c'est
Et aussi ça dépend du nombre de variables dans l'URL ! Une URL avec plus de deux & dedans ne
sera pas référencée mais
la plupart des pages de PhpBB ont moins de deux & dans leurs URLs
PS : saches que le plus important est d'enlever les SID (
comme cette URL : http://forums.phpbb-fr.com/viewtopic_60438_pd0_poasc_s15.html?sid=23d6b857d39c01b9cd
2a5dfafbf92524 )
Il y a des mods pour ça  |
Dernière édition par Pouzy le Lun 27 Déc 2004 18:28; édité 1 fois |
|
    |
 |
Barrette de RAM
Messages: 16
Tutoriaux : 0
|
Posté le:
Mar 28 Déc 2004 23:09 Sujet : [Référencement] URL REWRITING |
  |
jète un coup
d'oeil par ici : C'est incroyable le nombre de critères que google prend en charge pour
référencer ses pages.
C'est vrai que ici les pages des forums pas reécrite sont
référencé mais quand on regarde d'un peu plus près, on ne vois aucune adresses hébergé chez Lycos ou
LaPoste (je parle uniquement des forum). Donc je ne pense pas que mon forum sera référencé. J'en
suis même sur.
T'a pas une solution pour moi ?  |
|
|
     |
 |
Neurone isolé
Messages: 3
Tutoriaux : 0
|
Posté le:
Mer 29 Déc 2004 01:31 Sujet : [Référencement] URL REWRITING |
  |
Bonjour (ou bonsoir vu l'heure tardive du post).
J'ai suivi cet excellent tuto pour mon forum et tout marche à la perfection sauf un petit détail.
En effet, apparement la modif est incompatible avec le mod Cat.Hierarchy car mes sous forums
présents dans les dossiers affichent une erreur 404.
Heureusement dans mon cas le dossier ne comporte que des liens, mais pour ceux et celles qui
utilisent ce mod et tenten la modification, un petit add-on serait bienvenu  |
Dernière édition par nemesis le Mer 29 Déc 2004 01:32; édité 1 fois |
|
    |
 |
Vil Admin Méchant
Messages: 11959
Tutoriaux : 64
|
Posté le:
Mer 29 Déc 2004 10:07 Sujet : [Référencement] URL REWRITING |
  |
Il faudra que je demande à setdepic, nemesis
Bienvenue ici
Pour CTLB => Ce n'est pas un forum lycos le premier de cette requête ?
C'est normal que pour la requête que je t'ai donnée plus haut, tu ne voie pas de forums hébergés par
lycos, car tous les "gros" forums passent en premier  |
|
|
    |
 |
Neurone isolé
Messages: 1
Tutoriaux : 0
|
Posté le:
Mar 11 Jan 2005 21:21 Sujet : [Référencement] URL REWRITING |
  |
bonjour!
debutant , j'aimerais comprendre comment faire un bon referencement à partir de ce qui a été posté
ici plus haut: mais vraiment le B A BA !
d'avance merci!
- ou enregister le pg php , sous quel nom ..etc
- comment l'activer,, desactiver ...
je sais j'y pige que pouic mais cç m'aiderait beaucoup
ed
monsite: http://lesgensdici.nuxit.net et
je sais que google passe mais ne reference pas les msgs du forum !!!  |
|
|
   |
 |
Barrette de RAM
Messages: 16
Tutoriaux : 0
|
Posté le:
Mar 22 Fév 2005 13:20 Sujet : [Référencement] URL REWRITING |
  |
C'est bizar, je ne trouve pas : | Code: | | $SID = 'sid=' . $session_id; |
dans includes/sessions.php.
C'est de
| Code: | | $SID = (
$sessionmethod == SESSION_METHOD_GET ) ? 'sid=' . $session_id : ''; | que tu parle ?
Merci. |
|
|
     |
 |
Carte Mère
Messages: 921
Tutoriaux : 10
|
Posté le:
Mar 22 Fév 2005 14:51 Sujet : [Référencement] URL REWRITING |
  |
tu n as pas deja installe un MOD de suppression de sessions pour avoir une modif ?
Sinon, bin essaye en faisant un backup  |
_________________
Pouzy se cache derrière ce compte lorsqu'il n'est pas chez lui, question de sécurité
Statut : Kubuntu |
|
      |
 |
Barrette de RAM
Messages: 16
Tutoriaux : 0
|
Posté le:
Mar 22 Fév 2005 16:51 Sujet : [Référencement] URL REWRITING |
  |
nan, je n'ai que 'réponse rapide' d'instalé.
jète un coup d'oueil sur http://www.dragozor.com/forum/index.php
quand je me rend à http://www.dragozor.com/forum/forum-1.html directement, je vois bien que l'URL
fonctionne mais je ne les vois pas écrit lorsque je passe la souri sur les liens. Je croi que ca
vien d'un modif à faire dans des fichiers du forum mais je ne voi pas lesquelles.
Tu peu m'aider ?
Merci. |
Dernière édition par CTLB le Mar 22 Fév 2005 17:54; édité 1 fois |
|
     |
 |
|
|
|
|
|