Mazout
|
Bonjour a toutes et tous,
j'ai bien suivi les conseils du post
"Url rewriting phpbb avec le titre dans l'url" l'installation est ok, mais il y a un problème certainement du côte du fichier .htaccess (j'en suis pas certain) !
En fait les url du forum sont bien rewriter mais quand on clic sur les liens, les pages n'existe pas.
L'url est sous la forme :
h**p://www.monsite.com/forum/f1_0_0-mes-mots-clefs.html
Et lors du clic ----> error 404
Je suis heberge chez ovh je ne sais pas si cela peut être lie !
Merci de votre aide |
|
Ohax
|
| Montre moi voir ton htaccess ;-) |
|
Mazout
|
RewriteEngine On
RewriteRule ^index.html /index.php
RewriteRule ^f([0-9]*)_([0-9]*)_([0-9]*)-.* /viewforum.php?f=$1&topicdays=$2&start=$3
RewriteRule ^f([0-9]*)-.* /viewforum.php?f=$1
RewriteRule ^([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)-.* /viewtopic.php?t=$1&postdays=$2&postorder=$3&start=$4
RewriteRule ^([0-9]*)_([0-9]*)-.* /viewtopic.php?t=$1&start=$2
RewriteRule ^([0-9]*)-.* /viewtopic.php?t=$1 |
|
Ohax
|
Chez ovh, cela marche avec un .htaccess dans le même dossier :
Citation: RewriteEngine On
RewriteRule ^index.html /forum/index.php
RewriteRule ^f([0-9]*)_([0-9]*)_([0-9]*)-.* /forum/viewforum.php?f=$1&topicdays=$2&start=$3
RewriteRule ^f([0-9]*)-.* /forum/viewforum.php?f=$1
RewriteRule ^([0-9]*)_([0-9]*)_([0-9]*)_([0-9]*)-.* /forum/viewtopic.php?t=$1&postdays=$2&postorder=$3&start=$4
RewriteRule ^([0-9]*)_([0-9]*)-.* /forum/viewtopic.php?t=$1&start=$2
RewriteRule ^([0-9]*)-.* /forum/viewtopic.php?t=$1
je pense que ça devrait marcher avec ça dans le même repertoire ;-) |
|
Mazout
|
TRop costaud Ohax !
ca fonctionne a present !
je vais essayer d'aller encore un peu plus loin maintenant !
MERCI :lol: |
|
Ohax
|
hehe ;-)
de rien
et bonne chance pour la suite :-) |
|
Mazout
|
Euh j'ai juste une tite question !
Pourquoi tu n'utilises pas ceztte technique pour ton forum ? |
|
Mazout
|
| et aussi a quoi sert le fichier robots.txt dans le zip du MOD ? |
|
Ohax
|
à supprimer le duplicate
c'est pour que google n'indexe pas les pages (ou desindexe) rewrite
c'est indispensable pour eviter les penalite
surtout depuis qu'il n'y a plus de sessions pour bloquer google
tu as bien supprime les session pour les invites comme l'explique le post au moins ?
ps : le robots.txt ce place à la racine du site
Exemple : http://www.adojeunz.com/robots.txt |
|
Ohax
|
Citation: Euh j'ai juste une tite question !
Pourquoi tu n'utilises pas ceztte technique pour ton forum ?
Seuls les invites voient les urls rewrites ;-)
ça ne sert à rien de le faire pour les membres !
avantages :
- pratique en cas de changement d'url rewriting (chose que je ne ferai pas)
- permet d'economiser enormement de ressources |
|
Mazout
|
OK merci pour ces infos,
- c'est pas dangeureux d'accepter les avatars ?
- sur mon forum n'importe quel invite peut poster un message, comment faire pour qu'on ne puisse pas poster sans être inscrit ?
- est-il possible d'avoir le même theme sur la partie admin que sur la partie forum ? |
|
Ohax
|
Citation: - c'est pas dangeureux d'accepter les avatars ?
Si tu les heberges sur ton propre hebergement ou serveur ça ne risque rien ;-)
si tu choisit de faire comme adojeunz en liant à un autre site ça sera beaucoup plus chiant à administrer
donc je te conseille de les heberger sur ton forum si ta bande passante ainsi que tes ressources te le permettent
Citation: - sur mon forum n'importe quel invite peut poster un message, comment faire pour qu'on ne puisse pas poster sans être inscrit ?
Aller au Panneau d'administration
-> permission
tu selectionne un forum
et tu met " enregistre "
ne met pas invisible ou autres en faisant mumuse dans "avance" sinon l'url rewriting ne servira à rien ;-)
et tu repète l'operation pour chaque rubrique ;-)
Citation: - est-il possible d'avoir le même theme sur la partie admin que sur la partie forum ?
c'est à dire ?
tu parles de l'apparence ?
ça me semble pas très important si c'est ça mais logiquement ton thème doit pouvoir le gerer tout seul si tu l'a uploade et installe correctement ;-) |
|
Mazout
|
Ok merci c'est nickel !
Maintenant j'essai de mettre en place sur la home de mon site un tableau contenant les 15 derniers post du forum, avec les titres, et biensur les liens rewrites.
Actuellement cela fonctionne mais les url sont sous cette forme :
http://www.monsite.com/forum/viewtopic.php?p=1#1
et j'aimerai qu'elles soient sous la forme :
http://www.monsite.com/forum/1_0-mes-mots-clefs-2.html
C'est possible ca ? |
|
Ohax
|
Voici un de mes mods qui devrait pouvoir d'adapter très facilemment à ce que tu veut faire ;-)
Ohax a écrit: Je me suis permit d'apporter une petite contribution supplementaire a ce post :
http://www.webrankinfo.com/forums/viewtopic_25745.htm
Cet ajout est directemment applicable pour la Version 0.2.2
Il s'agit de la solution la plus simple que j'ai trouve pour permettre une meilleure indexation des forums qui ont subits cette modifications.
Cette modification est utile pour les forums qui depassent les 100 messages / jour.
Ce code vous sera egalemment utile si vous desirez utiliser l'url rewriting de kaizen afin de voir tous vos topics rapidemments indexees.
Le code n'est pas tres complique mais je pense que ceux qui ont appliques la modification de kaizen devraient s'appuyer dessus !
A la racine de votre forum nous allons creer le fichier lasts.php
Voici son code :
Code:
<title>Listing Sitemap</title>
<?
// Simple Sitemap phpbb for url rewrite kaizen V 2.2.0
// By Ohax http://www.adojeunz.com
// Support : http://www.webrankinfo.com/forums/viewtopic_34332.htm
//Ce fichier est a mettre a la racine de votre forum
$repertoire = "lasts/"; // Repertoire des sitemaps
$opendir = opendir($repertoire);
$adresse_site = ""; // Adresse de votre site avec un slash a la fin ( /!\ cette variable est optionnelle)
$chemin_forum = ""; // Ici on indique le chemin du forum par exemple /forum/
while ($fichier = readdir($opendir)) {
if(is_file($repertoire.$fichier)) {
echo "Fichier ".$fichier;
echo "<br>";
echo "URL du sitemap specifique : <a href=$chemin_forum$repertoire$fichier>$adresse_site$chemin_forum$repertoire$fichier</a>";
echo "<br><br>";
}
}
closedir($opendir);
?>
Ensuite, nous allons tout creer un repertoire que l'on apellera lasts et que l'on placera à la racine du forum !
Dans ce repertoire nous y placerons un fichier php (peu importe le nom) contenant ce code dont je me suis inspire d'un code similaire pour le generer :
Code:
<title>Sitemap</title>
<?
// Simple Sitemap phpbb for url rewrite kaizen V 2.2.0
// By Ohax http://www.adojeunz.com
// Support : http://www.webrankinfo.com/forums/viewtopic_34332.htm
//Ce fichier est a mettre dans un repertoire nomme lasts situe a la racine de votre forum
include('../config.php'); // Indiquez le chemin vers votre config.php
$base= ""; // Nom de votre base de donnee
$chemin_forum = ""; // Ici on indique le chemin du forum par exemple /forum/
$link = mysql_connect ($dbhost,$dbuser,$dbpasswd) or die ('Erreur : '.mysql_error() ); // Connection à la base de donnee
mysql_select_db($base) or die ('Erreur :'.mysql_error());
$select = "SELECT topic_title,topic_id,topic_replies,topic_poster FROM phpbb_topics WHERE forum_id= 17 ORDER BY topic_id DESC limit 200"; // WHERE forum_id= indique le forum afficher et DESC limit indique le nombre de posts a afficher ;-)
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
while($row = mysql_fetch_array($result))
{
$topic_id = $row['topic_id'];
$titre = $row['topic_title'];
// Maintenant on passe à l'url rewriting et à la generation des urls
$change_space = "-";
$url_title = $titre;
$url_title = strtolower($url_title);
$url_title = strtr($url_title,'áâàäeêèëíîìïóôòöúûùüýçñ','aaaaeeeeiiiioooouuuuycn');
$url_title = preg_replace("/(>|<|"|&)/",$change_space,$url_title);
$url_title = preg_replace("/[^a-z0-9_\-]/",$change_space,$url_title);
$url_title = preg_replace("/[$change_space]+/",$change_space,$url_title);
($url_title{0} == $change_space ? $url_title = substr($url_title,1) : '' );
($url_title{strlen($url_title)-1} == $change_space ? $url_title = substr($url_title,0, strlen($url_title)-1) : '' );
// On affiche le resultat
echo '<a href="'.$chemin_forum.''.$topic_id.'_0-'.$url_title.'.html">'.$titre.'</a><br>';
}
mysql_free_result($result);
mysql_close(); //On ferme la connection à la base de donnee
?>
Maintenant passont à la ligne 12
Code: $select = "SELECT topic_title,topic_id,topic_replies,topic_poster FROM phpbb_topics WHERE forum_id= 17 ORDER BY topic_id DESC limit 200";
Code: WHERE forum_id=
Correspond a l'id du forum dont vous voulez faire la map
Vous devrez donc faire 5 fichier avec 5 valeur differentes si vous avez 5 rubriques ;-)
Code: DESC limit
Indique le nombre de posts qui doivent être affiches
Il y a aussi possibilite de ne faire qu'un seul fichier en supprimant la partie "WHERE forum_id=" mais la presentation sera moin structuree et vous risquez d'indexer les liens de vos topics de moderation ou rubrique privee
Bien evidemment n'oubliez pas de faire un lien vers lasts.php pour que google indexe votre simple sitemap !
En esperant que cela puisse servir au plus grand nombre ;-) |
|
| |