Forum Moderators: phranque

Message Too Old, No Replies

Mod Rewrite Help

         

Karl456

2:21 am on Jul 14, 2010 (gmt 0)

10+ Year Member



I have my rewrite rules:
Options +FollowSymLinks
RewriteEngine on
RewriteRule \.(gif|png|jpg|css|js)$|^index\.php$ - [L]

RewriteRule ^admincp/(.*)/(.*)/(.*)?$ index.php?page=admincp&$1=$2&id=$3 [NC,L]
RewriteRule ^admincp/(.*)/(.*)?$ index.php?page=admincp&$1=$2 [NC,L]

RewriteRule ^(.*)/([0-9]+)/([a-zA-Z._&-]+)?$ index.php?page=$1&flibble=$1view&id=$2 [NC,L]
RewriteRule ^(.*)/([0-9]+)/([a-zA-Z._&-]+)/?$ index.php?page=$1&flibble=$1view&id=$2 [NC,L]
RewriteRule ^(.*)/([0-9]+)?$ index.php?page=$1&flibble=$1view&id=$2 [NC,L]

RewriteRule ^(.*)/([a-zA-Z._&-]+)?$ index.php?page=$1&skill=$2&orderby=level [NC,L]
RewriteRule ^(.*)/(.*)/(.*)/(.*)$ index.php?page=$1&skill=$2&rsname=$3&action=$4 [NC,L]

RewriteRule ^(.*)?$ index.php?page=$1 [NC,L]


However, as you can see, it will rewrite anything.

I need to make an exception for the forums directory.

Any ideas how I would do this?

g1smd

6:42 am on Jul 14, 2010 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



Use a negative match preceding RewriteCond.

Additionally, change the very very inefficient (.*) patterns to something more precise. There was a thread only yesterday discussing this, and it is a topic that comes up every week.

Karl456

1:32 pm on Jul 14, 2010 (gmt 0)

10+ Year Member



I've tried looking at many examples of negative RewriteCond's without any luck.

jdMorgan

3:27 pm on Jul 14, 2010 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Exclude requests for the forums directory-path from being rewritten, and exclude the index.php itself from being rewritten -- otherwise you'll get an 'infinite' rewriting loop:

RewriteCond $1 !^(index\.php$|forums/)
RewriteRule ^(.*)$ index.php?page=$1 [L]

Jim