[Bug] Mod spécial avec SEO + Premod SEO

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

Modérateur: Modérateurs

[Bug] Mod spécial avec SEO + Premod SEO

Messagede Princ7 » Ven Mar 19, 2010 10:45 am

Bonjours,




Alors tout d'abord je poste mon sujet ici plutôt que dans le support de la "Premod SEO", car cela concerne + un autre mod que j'avais installé ;)
Voilà alors la "Premod SEO" marche très bien pas de souci bien sûr :mrgreen:

Par contre sur l'un de mes forums, j'avais un mod spécial qui faisait lui aussi de la réécriture SEO sur un seul dossier /blog/ dans le dossier racine de mon forum /i/
Le souci c'est que si j'active son option SEO dans mon panneau d'admin.. J'ai bien la réécriture mais une tonne de bug -_- Comme entre autre aucune image qui s'affiche (pièce jointe), dès que l'on vote à un sondage paff erreur 404, style planté en gros :| C'est comme si, en activant sa SEO les chemins des fichiers devenaient erronés :shock:

Alors que si je ne l'active pas, bien sûr aucune url est réécrite, mais tout marche parfaitement. Donc ça ne vient pas de l'installation :roll:
Je dirais que ça vient soit d'une mauvaise compatibilité entre la "Premod SEO" et cette option SEO de ce mod.. Soit du code à insérer dans le .htaccess

Concernant le .htaccess j'ai déjà essayer plusieurs manip mais en vînt, voir même c'était pire :lol:

Par défaut le code à insérer pour le mod c'est :
Code: Tout sélectionner
<IfModule mod_rewrite.c>
RewriteEngine on

Rewriterule ^blog/(.+)/(.+).html$      ./blog/view/blog.php?page=$1&mode=$2 [NC]
Rewriterule ^blog/(.+).html$         ./blog/blog.php?page=$1 [NC]
Rewriterule ^blog/(.+)/$            ./blog/view/blog.php?page=$1 [NC]
Rewriterule ^blog/$                  ./blog/blog.php [NC]

RewriteCond %{REQUEST_FILENAME} !-f
Rewriterule ^blog/(.+)/(.+)$      ./blog/view/blog.php?page=$1&mode=$2 [NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.+)$ ./blog/blog.php?page=$1 [NC]
</IfModule>


Et mon .htaccess sans le code ci-dessus :
(Comme d'habitude j'ai mis des XXXXXXXXXXXXXX pour cacher des info's =p)
Code: Tout sélectionner
#
# Uncomment the statement below if you want to make use of
# HTTP authentication and it does not already work.
# This could be required if you are for example using PHP via Apache CGI.
#
# <IfModule mod_rewrite.c>
# RewriteEngine on
# RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
# </IfModule>

######### Modif by Ibrinouw DEBUT

#
# Blocage provisoire Off
#
# AuthUserFile /XXXXXXXXXXXXXX/.htpasswd
# AuthGroupFile /dev/null
# AuthName "XXXXXXXXXXXXXX"
# AuthType basic
# require valid-user
#

#####################################################
# Lines That should already be in your .htacess
#####################################################

<Files "config.php">
   Order Allow,Deny
   Deny from All
</Files>
<Files "common.php">
   Order Allow,Deny
   Deny from All
</Files>

#
# Mettre # si blocage provisoire On
#
<Files "XXXXXXXXXXXXXX">
AuthUserFile /XXXXXXXXXXXXXX/.htpasswd
AuthGroupFile /dev/null
AuthName "XXXXXXXXXXXXXX"
AuthType basic
require valid-user
</Files>
#

######### Modif by Ibrinouw FIN

# You may need to un-comment the following lines
# Options +FollowSymlinks
# To make sure that rewritten dir or file (/|.html) will not load dir.php in case it exist
# Options -MultiViews
# REMEBER YOU ONLY NEED TO STARD MOD REWRITE ONCE
RewriteEngine On
# Uncomment the statement below if you want to make use of
# HTTP authentication and it does not already work.
# This could be required if you are for example using PHP via Apache CGI.
# RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
# REWRITE BASE
RewriteBase /i/
# HERE IS A GOOD PLACE TO FORCE CANONICAL DOMAIN
# RewriteCond %{HTTP_HOST} !^fr\.ibrinouw\.com$ [NC]
# RewriteRule ^(.*)$ http://fr.ibrinouw.com/i/$1 [QSA,L,R=301]

# DO NOT GO FURTHER IF THE REQUESTED FILE / DIR DOES EXISTS
# RewriteCond %{REQUEST_FILENAME} -f
# RewriteCond %{REQUEST_FILENAME} -d
# RewriteRule . - [L]
#####################################################
# PHPBB SEO REWRITE RULES ALL MODES
#####################################################
# AUTHOR : dcz www.phpbb-seo.com
# STARTED : 01/2006
#################################
# FORUMS PAGES
###############
# FORUM INDEX REWRITERULE WOULD STAND HERE IF USED. "forum" REQUIRES TO BE SET AS FORUM INDEX
# RewriteRule ^forum\.html$ index.php [QSA,L,NC]
# FORUM ALL MODES
RewriteRule ^(forum|[a-z0-9_-]*-f)([0-9]+)/?(page([0-9]+)\.html)?$ viewforum.php?f=$2&start=$4 [QSA,L,NC]
# TOPIC WITH VIRTUAL FOLDER ALL MODES
RewriteRule ^(forum|[a-z0-9_-]*-f)([0-9]+)/(sujet|[a-z0-9_-]*-t)([0-9]+)(-([0-9]+))?\.html$ viewtopic.php?f=$2&t=$4&start=$6 [QSA,L,NC]
# GLOBAL ANNOUNCES WITH VIRTUAL FOLDER ALL MODES
RewriteRule ^annonces/(sujet|[a-z0-9_-]*-t)([0-9]+)(-([0-9]+))?\.html$ viewtopic.php?t=$2&start=$4 [QSA,L,NC]
# TOPIC WITHOUT FORUM ID & DELIM ALL MODES
RewriteRule ^([a-z0-9_-]*)/?(sujet|[a-z0-9_-]*-t)([0-9]+)(-([0-9]+))?\.html$ viewtopic.php?forum_uri=$1&t=$3&start=$5 [QSA,L,NC]
# PHPBB FILES ALL MODES
RewriteRule ^ressources/[a-z0-9_-]+/(thumb/)?([0-9]+)$ download/file.php?id=$2&t=$1 [QSA,L,NC]
# PROFILES THROUGH USERNAME
RewriteRule ^membre/([^/]+)/?$ memberlist.php?mode=viewprofile&un=$1 [QSA,L,NC]
# USER MESSAGES THROUGH USERNAME
RewriteRule ^membre/([^/]+)/(topics|posts)/?(page([0-9]+)\.html)?$ search.php?author=$1&sr=$2&start=$4 [QSA,L,NC]
# GROUPS ALL MODES
RewriteRule ^(groupe|[a-z0-9_-]*-g)([0-9]+)(-([0-9]+))?\.html$ memberlist.php?mode=group&g=$2&start=$4 [QSA,L,NC]
# POST
RewriteRule ^message([0-9]+)\.html$ viewtopic.php?p=$1 [QSA,L,NC]
# ACTIVE TOPICS
RewriteRule ^sujets-actifs(-([0-9]+))?\.html$ search.php?search_id=active_topics&start=$2&sr=topics [QSA,L,NC]
# UNANSWERED TOPICS
RewriteRule ^sans-reponses(-([0-9]+))?\.html$ search.php?search_id=unanswered&start=$2&sr=topics [QSA,L,NC]
# NEW POSTS
RewriteRule ^nouveaux-messages(-([0-9]+))?\.html$ search.php?search_id=newposts&start=$2&sr=topics [QSA,L,NC]
# UNREAD POSTS
RewriteRule ^non-lu(-([0-9]+))?\.html$ search.php?search_id=unreadposts&start=$2 [QSA,L,NC]
# THE TEAM
RewriteRule ^equipe\.html$ memberlist.php?mode=leaders [QSA,L,NC]
# HERE IS A GOOD PLACE TO ADD OTHER PHPBB RELATED REWRITERULES

#####################################################
# GYM Sitemaps & RSS
# Global channels
RewriteRule ^rss(/(news)+)?(/(digest)+)?(/(short|long)+)?/?$ gymrss.php?channels&$2&$4&$6 [QSA,L,NC]
# HTML Global news & maps
RewriteRule ^(news|maps)/?(page([0-9]+)\.html)?$ map.php?$1&start=$3 [QSA,L,NC]
# END GYM Sitemaps & RSS
#####################################################

# FORUM WITHOUT ID & DELIM ALL MODES (SAME DELIM)
# THESE THREE LINES MUST BE LOCATED AT THE END OF YOUR HTACCESS TO WORK PROPERLY
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9_-]+)/?(page([0-9]+)\.html)?$ viewforum.php?forum_uri=$1&start=$3 [QSA,L,NC]
# FIX RELATIVE PATHS : FILES
RewriteRule ^.+/(style\.php|ucp\.php|mcp\.php|faq\.php|download/file.php)$ $1 [QSA,L,NC,R=301]
# FIX RELATIVE PATHS : IMAGES
RewriteRule ^.+/(styles/.*|images/.*)/$ $1 [QSA,L,NC,R=301]
# END PHPBB PAGES
#####################################################

#####################################################
# GYM Sitemaps & RSS
# HTML Module additional modes
RewriteRule ^(news|maps)/([a-z0-9_-]+)(/([a-z0-9_-]+))?/?(page([0-9]+)\.html)?$ map.php?$2=$4&$1&start=$6 [QSA,L,NC]
# Main feeds & channels
RewriteRule ^rss(/(news)+)?(/(digest)+)?(/(short|long)+)?(/([a-z0-9_-]+))?/([a-z0-9_]+)\.xml(\.gz)?$ gymrss.php?$9=$8&$2&$4&$6&gzip=$10 [QSA,L,NC]
# Module feeds
RewriteRule ^[a-z0-9_-]*-[a-z]{1,2}([0-9]+)(/(news)+)?(/(digest)+)?(/(short|long)+)?/([a-z0-9_]+)\.xml(\.gz)?$ gymrss.php?$8=$1&$3&$5&$7&gzip=$9 [QSA,L,NC]
# Module feeds without ids
RewriteRule ^([a-z0-9_-]+)(/(news)+)?(/(digest)+)?(/(short|long)+)?/([a-z0-9_]+)\.xml(\.gz)?$ gymrss.php?nametoid=$1&$3&$5&$7&modulename=$8&gzip=$9 [QSA,L,NC]
# Google SitemapIndex
RewriteRule ^sitemapindex\.xml(\.gz)?$ sitemap.php?gzip=$1 [QSA,L,NC]
# Module cat sitemaps
RewriteRule ^[a-z0-9_-]+-([a-z]{1,2})([0-9]+)\.xml(\.gz)?$ sitemap.php?module_sep=$1&module_sub=$2&gzip=$3 [QSA,L,NC]
# Module sitemaps
RewriteRule ^([a-z0-9_]+)-([a-z0-9_-]+)\.xml(\.gz)?$ sitemap.php?$1=$2&gzip=$3 [QSA,L,NC]
# END GYM Sitemaps & RSS
#####################################################


Mes manip qui ne marche pas :
(Code inséré en bas de mon .htaccess)
Code: Tout sélectionner
<IfModule mod_rewrite.c>

Rewriterule ^blog/(.+)/(.+).html$      ./blog/view/blog.php?page=$1&mode=$2 [NC]
Rewriterule ^blog/(.+).html$         ./blog/blog.php?page=$1 [NC]
Rewriterule ^blog/(.+)/$            ./blog/view/blog.php?page=$1 [NC]
Rewriterule ^blog/$                  ./blog/blog.php [NC]

RewriteCond %{REQUEST_FILENAME} !-f
Rewriterule ^blog/(.+)/(.+)$      ./blog/view/blog.php?page=$1&mode=$2 [NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.+)$ ./blog/blog.php?page=$1 [NC]
</IfModule>

ou :
Code: Tout sélectionner
Rewriterule ^blog/(.+)/(.+).html$      ./blog/view/blog.php?page=$1&mode=$2 [NC]
Rewriterule ^blog/(.+).html$         ./blog/blog.php?page=$1 [NC]
Rewriterule ^blog/(.+)/$            ./blog/view/blog.php?page=$1 [NC]
Rewriterule ^blog/$                  ./blog/blog.php [NC]

RewriteCond %{REQUEST_FILENAME} !-f
Rewriterule ^blog/(.+)/(.+)$      ./blog/view/blog.php?page=$1&mode=$2 [NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.+)$ ./blog/blog.php?page=$1 [NC]

Ou encore même :
Code: Tout sélectionner
<IfModule mod_rewrite.c>
RewriteEngine on

Rewriterule ^blog/(.+)/(.+).html$      ./blog/view/blog.php?page=$1&mode=$2 [NC]
Rewriterule ^blog/(.+).html$         ./blog/blog.php?page=$1 [NC]
Rewriterule ^blog/(.+)/$            ./blog/view/blog.php?page=$1 [NC]
Rewriterule ^blog/$                  ./blog/blog.php [NC]

RewriteCond %{REQUEST_FILENAME} !-f
Rewriterule ^blog/(.+)/(.+)$      ./blog/view/blog.php?page=$1&mode=$2 [NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.+)$ ./blog/blog.php?page=$1 [NC]
</IfModule>



Alors bon.. Je suis pas un as' de la réécriture :oops: Ma question, c'est de savoir comment fusionner les 2 sans bug ? :?

Si vous voulez tester sur le terrain :
Mon blog en mode normal :
http://fr.ibrinouw.com/i/blog.php?u=2
Mon blog en réécriture :
http://fr.ibrinouw.com/i/blog/Pinouw/
La différence est visible >.<
(PS : Pas besoin d'être inscrit pour voir ;))

Bref j'aimerai beaucoup faire marcher cette réécriture car sinon ça risque de faire fuir avec des url's aussi moche que le mode normal :evil: Et puis niveau référencement j'en parle même pas... :(
En + j'ai passé un temps monstrueux à traduire ce mod.. Oui ce n'est pas un mod en français et même d'ailleurs il faut que je revois certains textes ^^
Bref je vous passe les détails de ma life :P




Merci d'avance
@Bientôt j'espère *-*
Avatar de l’utilisateur
Princ7
 
Messages: 30
Inscription: Mer Mar 03, 2010 3:47 pm
Localisation: France

Publicité

Re: [Bug] Mod spécial avec SEO + Premod SEO

Messagede Princ7 » Lun Mar 22, 2010 9:19 am

Bonjour,




Hum pas d'idée à mon problème ? =/

Sinon j'étais entrain de penser que pour contourner ce truc x)
Je pourrais faire une redirection automatique pour changer les urls /blog/blog=0 en /blog/pseudo/
C'est surtout ça que j'aimerai, après le reste c'est moins important =]

M'enfin est-il possible de faire une redirection automatique ? (en 301) Si oui comment ? :oops:

Édite, dans mon .htaccess je pense qu'il faudrait mettre à la fin du coup :
Code: Tout sélectionner
RewriteRule ^blog/([^/]+)/?$ ./blog/blog.php?u=$2 [QSA,L,R=301]

Est-ce correct ? *.*




Voilà voilà, en espérant que quelqu'un m'aide un peu *-*
Je le remercie d'avance :)
Bon lundi à tous..
Avatar de l’utilisateur
Princ7
 
Messages: 30
Inscription: Mer Mar 03, 2010 3:47 pm
Localisation: France

Re: [Bug] Mod spécial avec SEO + Premod SEO

Messagede gowap » Lun Mar 22, 2010 3:08 pm

Désolé, mais ton histoire ne m'inspire pas des masses...

Ca m'a l'air d'etre un sacré bordel au niveau des chemins css, parce que c'est codé avec des chemins relatifs.

une image css codée avec url("./blog/styles/blogger/images/sides_body.png")

Quant tu es -http://fr.ibrinouw.com/i/blog.php?u=2 il va la chercher dans
-http://fr.ibrinouw.com/i/blog/styles/blogger/images/sides_body.png et il va la trouver

Mais si tu es 2 crans plus bas dans l'arborescence en utilisant -http://fr.ibrinouw.com/i/blog/view/blog.php?page=Pinouw ca pointera sur
-http://fr.ibrinouw.com/i/blog/view/blog/styles/blogger/images/sides_body.png qui n'existe pas.

En plus le code css est en double dans les pages.
Dans <head> je vois 2 <style type="text/css"> qui se suivent avec le même contenu (au moins les premières déclarations, si ce n'est l'ensemble, j'ai pas comparé strictement)
Gravure-News : la communauté francophone de la gravure de CD/DVD et son forum d'entraide.
Avatar de l’utilisateur
gowap
phpBB SEO Team
phpBB SEO Team
 
Messages: 1510
Inscription: Dim Mai 07, 2006 10:56 pm

Re: [Bug] Mod spécial avec SEO + Premod SEO

Messagede Princ7 » Lun Mar 22, 2010 6:53 pm

Bonsoir,




Déjà concernant le double style, j'ai modifié le code et c'est réglé :D Le 2ème style étant affiché seulement si le mode CSS personnalisé est activé (ce qui est le cas sur mon blog) et le 1er style (par défaut) n'aurait pas du s'afficher.. ^^ Enfin bon, c'est réglé il me semble :)

Sinon pour l'autre problème, suffirait-il de rajouter par exemple "http://fr.ibrinouw.com/i" devant "/blog/styles/blogger/images/sides_body.png" ?
Et donc il faut revoir tous les codes CSS ? =/
Voir même tous les codes ? Car il me semble avoir vu des chemins relatifs un peu partout -_-

Ça m'étonnerait pas que ce mod américain soit qu'une "beta" même si ce n'est pas marqué, déjà qu'il était pas en français et maintenant ça.. Enfin bon, ya plus qu'à le réparer :mrgreen: =P




Merci de m'avoir répondu et d'avoir pris un peu de ton temps libre pour moi :)
Avatar de l’utilisateur
Princ7
 
Messages: 30
Inscription: Mer Mar 03, 2010 3:47 pm
Localisation: France

Re: [Bug] Mod spécial avec SEO + Premod SEO

Messagede gowap » Lun Mar 22, 2010 8:07 pm

Princ7 a écrit:Sinon pour l'autre problème, suffirait-il de rajouter par exemple "http://fr.ibrinouw.com/i" devant "/blog/styles/blogger/images/sides_body.png" ?

oui, remplacer
./blog
par
/i/blog (ou http://fr.ibrinouw.com/i/blog c'est pareil)
ferait l'affaire
Gravure-News : la communauté francophone de la gravure de CD/DVD et son forum d'entraide.
Avatar de l’utilisateur
gowap
phpBB SEO Team
phpBB SEO Team
 
Messages: 1510
Inscription: Dim Mai 07, 2006 10:56 pm

Re: [Bug] Mod spécial avec SEO + Premod SEO

Messagede Princ7 » Sam Avr 03, 2010 2:36 pm

Bonjour,


Tout d'abord désolé si je réponds seulement maintenant, mais mon abonnement internet a été stoppé net.. 6 jours avant la date prévue ! >.>
Bref me revoilà :D

Je voulais te remercier pour ton aide et ces informations =)


Je reviendrai plus tard si besoin :)
@plus
Avatar de l’utilisateur
Princ7
 
Messages: 30
Inscription: Mer Mar 03, 2010 3:47 pm
Localisation: France


Retourner vers mod rewrite Apache

Qui est en ligne

Utilisateurs parcourant ce forum: Baidu [Spider] et 7 invités