Almost working beautifully

phpBB SEO Premod for phpBB3 support forum.
This premodded version of phpBB3 includes the three different type of URL rewriting for phpBB3 by phpBB SEO. It comes with several other Search Engine Optimization mods installed.

Moderator: Moderators

Almost working beautifully

Postby classixuk » Wed Nov 12, 2008 5:46 pm

Hi there,

First of all, thanks for creating this fantastic version of phpBB. It is amazing!

I have installed it and it seems to be working beautifully, but only if I generate an .htaccess file for the subfolder that phpBB is installed in.

This might be a problem for me as I want to use GYM sitemaps and RSS. :(

In my root, I have Joomla installed which already uses an htaccess file (below). I copied and pasted the three different versions generated and added them to this file, but the urls in phpbb did not work - they all went 404.

Only when I made a new .htaccess file in the subfolder for phpbb did they work.

Can you advise if perhaps there is something in the Joomla .htaccess preventing the generated code from working if it is placed in the same file? here is what I was trying to post in the root

Thanks.

Code: Select all
##
# @version $Id: htaccess.txt 10492 2008-07-02 06:38:28Z ircmaxell $
# @package Joomla
# @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section








   

# REWRITE BASE
RewriteBase /
# HERE IS A GOOD PLACE TO ADD THE WWW PREFIXE REDIRECTION

#####################################################
# PHPBB SEO REWRITE RULES - ADVANCED
#####################################################
# 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 ^hairdressersforum/forum\.html$ /hairdressersforum/index.php [QSA,L,NC]
# FORUM
RewriteRule ^hairdressersforum/[a-z0-9_-]*-f([0-9]+)/?(page([0-9]+)\.html)?$ /hairdressersforum/viewforum.php?f=$1&start=$3 [QSA,L,NC]
# TOPIC WITH VIRTUAL FOLDER
RewriteRule ^hairdressersforum/[a-z0-9_-]*-f([0-9]+)/[a-z0-9_-]*-t([0-9]+)(-([0-9]+))?\.html$ /hairdressersforum/viewtopic.php?f=$1&t=$2&start=$4 [QSA,L,NC]
# GLOBAL ANNOUNCES WITH VIRTUAL FOLDER
RewriteRule ^hairdressersforum/announces/[a-z0-9_-]*-t([0-9]+)(-([0-9]+))?\.html$ /hairdressersforum/viewtopic.php?t=$1&start=$3 [QSA,L,NC]
# TOPIC WITHOUT FORUM ID & DELIM
RewriteRule ^hairdressersforum/([a-z0-9_-]*)/?[a-z0-9_-]*-t([0-9]+)(-([0-9]+))?\.html$ /hairdressersforum/viewtopic.php?forum_uri=$1&t=$2&start=$4 [QSA,L,NC]
# PROFILES SIMPLE
RewriteRule ^hairdressersforum/member([0-9]+)\.html$ /hairdressersforum/memberlist.php?mode=viewprofile&u=$1 [QSA,L,NC]
# USER MESSAGES SIMPLE
RewriteRule ^hairdressersforum/member([0-9]+)-(topics|posts)(-([0-9]+))?\.html$ /hairdressersforum/search.php?author_id=$1&sr=$2&start=$4 [QSA,L,NC]
# GROUPS SIMPLE
RewriteRule ^hairdressersforum/group([0-9]+)(-([0-9]+))?\.html$ /hairdressersforum/memberlist.php?mode=group&g=$1&start=$3 [QSA,L,NC]
# POST
RewriteRule ^hairdressersforum/post([0-9]+)\.html$ /hairdressersforum/viewtopic.php?p=$1 [QSA,L,NC]
# ACTIVE TOPICS
RewriteRule ^hairdressersforum/active-topics(-([0-9]+))?\.html$ /hairdressersforum/search.php?search_id=active_topics&start=$2&sr=topics [QSA,L,NC]
# UNANSWERED TOPICS
RewriteRule ^hairdressersforum/unanswered(-([0-9]+))?\.html$ /hairdressersforum/search.php?search_id=unanswered&start=$2&sr=topics [QSA,L,NC]
# NEW POSTS
RewriteRule ^hairdressersforum/newposts(-([0-9]+))?\.html$ /hairdressersforum/search.php?search_id=newposts&start=$2&sr=topics [QSA,L,NC]
# THE TEAM
RewriteRule ^hairdressersforum/the-team\.html$ /hairdressersforum/memberlist.php?mode=leaders [QSA,L,NC]
# HERE IS A GOOD PLACE TO ADD OTHER PHPBB RELATED REWRITERULES
# FORUM WITHOUT ID & 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 ^hairdressersforum/([a-z0-9_-]+)/?(page([0-9]+)\.html)?$ /hairdressersforum/viewforum.php?forum_uri=$1&start=$3 [QSA,L,NC]
# END PHPBB PAGES
#####################################################





classixuk
 
Posts: 14
Joined: Wed Nov 12, 2008 12:22 pm

Advertisement

Postby SeO » Thu Nov 13, 2008 7:18 am

Joomla's rewriterules needs to be placed after phpBB ones ;)
SeO
Admin
Admin
 
Posts: 6333
Joined: Wed Mar 15, 2006 9:41 pm

Postby classixuk » Thu Nov 13, 2008 8:59 am

You little beauty!

Thanks so much admin! I had been banging my head against a brick wall yesterday trying to figure out what was wrong, and that solved it instantly.

One more question: Can I leave

Code: Select all
# 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>


inside my phpBB folder, or does it need to be inside the root for GYM to work?

Also, could you explain simply why putting the phpBB rewrites above the Joomla ones solved the problem? I would like to learn a little of 'why' as well as 'how' if you have the time to tell me.

Many thanks again for such a fantastic mod!

Chris
hairdressingworld.com
classixuk
 
Posts: 14
Joined: Wed Nov 12, 2008 12:22 pm

Postby dcz » Thu Nov 27, 2008 10:37 am

For the reason, it's just that joomla .htaccss is kind of lazy, it will just catch all possible cases with :
Code: Select all
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]


no other case can be treated after these two, just like if the rewriterules where not there at all. ".*" here means any string, even empty.
Our .htaccess will only take care of the phpBB urls, leaving other cases to others.

About the .htaccess in the phpBB/ dir, you can leave it as long as it contains no rewriterules (no RewriteEngine On), since it would then take the lead on the other one.

You can if you prefer use the "more options" option of the .htaccess generator to generate an .htaccess for phpBB3 meant to be used in it's sud dir, hairdressersforum/ in your case, but it's not mandatory since your root .htaccess is not so long.

++
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
 
Posts: 21238
Joined: Fri Apr 28, 2006 9:03 pm


Return to phpBB SEO Premod

 


  • Related topics
    Replies
    Views
    Last post

Who is online

Users browsing this forum: No registered users and 5 guests