Hi Tom :)
I was on the same point some months ago, and I got it working with good
results, anyway
the rules still can be improved (I'll tell you how).
Vbseo is quit clean/smart solution, but a little bit tricky: it passes
all requests through vbseo.php
to filter out the HTML output and generate a clean one. That's cpu
intensive, so I recomend you cherokee
+ eAccelerator (or some similar byte compiling accelerator)
Those are mines:
# first.... static directories are served directly (without passing by
vbseo.php) for faster response <some are missing>
vserver!30!rule!1400!handler = file
vserver!30!rule!1400!handler!iocache = 1
vserver!30!rule!1400!match = directory
vserver!30!rule!1400!match!directory = /customavatars
vserver!30!rule!1400!match!final = 1
vserver!30!rule!1400!only_secure = 0
vserver!30!rule!1300!handler = file
vserver!30!rule!1300!match = directory
vserver!30!rule!1300!match!directory = /images
vserver!30!rule!1300!match!final = 1
vserver!30!rule!1200!handler = file
vserver!30!rule!1200!match = directory
vserver!30!rule!1200!match!directory = /cpstyles
vserver!30!rule!1200!match!final = 1
vserver!30!rule!1100!handler = file
vserver!30!rule!1100!match = directory
vserver!30!rule!1100!match!directory = /clientscript
vserver!30!rule!1100!match!final = 1
vserver!30!rule!1000!handler = redir
# inline moderation (**** ---> read at the end)
vserver!30!rule!1000!handler = redir
vserver!30!rule!1000!handler!rewrite!1!regex = ^/inlinemod.php\?(.*)$
vserver!30!rule!1000!handler!rewrite!1!show = 0
vserver!30!rule!1000!handler!rewrite!1!substring =
/vbseo.php?vbseourl=inlinemod.php&$1
vserver!30!rule!1000!match = request
vserver!30!rule!1000!match!request = ^/inlinemod.php\?(.*)$
vserver!30!rule!1000!only_secure = 0
# the default php handler (it will catch any .php file without passing by
vbseo.php)
vserver!30!rule!900!handler = fcgi
vserver!30!rule!900!handler!balancer = round_robin
vserver!30!rule!900!handler!balancer!source!1 = 1
vserver!30!rule!900!handler!change_user = 33
vserver!30!rule!900!handler!check_file = 1
vserver!30!rule!900!handler!error_handler = 1
vserver!30!rule!900!handler!pass_req_headers = 0
vserver!30!rule!900!handler!xsendfile = 0
vserver!30!rule!900!match = extensions
vserver!30!rule!900!match!extensions = php
vserver!30!rule!900!match!final = 1
vserver!30!rule!900!only_secure = 0
# the dynamic content we don't want to "optimize", with their own static
files
vserver!30!rule!800!handler = redir
vserver!30!rule!800!handler!rewrite!1!regex = ^/modcp/$
vserver!30!rule!800!handler!rewrite!1!show = 1
vserver!30!rule!800!handler!rewrite!1!substring = /modcp/index.php
vserver!30!rule!800!match = request
vserver!30!rule!800!match!final = 1
vserver!30!rule!800!match!request = /modcp/
vserver!30!rule!800!only_secure = 0
vserver!30!rule!700!handler = file
vserver!30!rule!700!match = directory
vserver!30!rule!700!match!directory = /modcp
vserver!30!rule!700!match!final = 1
vserver!30!rule!600!handler = redir
vserver!30!rule!600!handler!rewrite!2!regex = ^/admincp/$
vserver!30!rule!600!handler!rewrite!2!show = 1
vserver!30!rule!600!handler!rewrite!2!substring = /admincp/index.php
vserver!30!rule!600!match = request
vserver!30!rule!600!match!final = 1
vserver!30!rule!600!match!request = /admincp/
vserver!30!rule!600!only_secure = 0
vserver!30!rule!500!handler = file
vserver!30!rule!500!handler!iocache = 1
vserver!30!rule!500!match = directory
vserver!30!rule!500!match!directory = /admincp
vserver!30!rule!500!match!final = 1
vserver!30!rule!500!only_secure = 0
# the sitemaps (you can add also urllist.txt, that is used in yahoo)
vserver!30!rule!400!handler = redir
vserver!30!rule!400!handler!rewrite!1!show = 0
vserver!30!rule!400!handler!rewrite!1!substring =
/vbseo_sitemap/vbseo_getsitemap.php?sitemap=sitemap$1.xml$2
vserver!30!rule!400!match = request
vserver!30!rule!400!match!final = 1
vserver!30!rule!400!match!request = ^/sitemap(.*)\.xml(\.gz)?$
vserver!30!rule!400!only_secure = 0
# any other query, with it's query string (after "?") we convert it to
/vbseo.php?vbseourl=$1&$2
vserver!30!rule!300!handler = redir
vserver!30!rule!300!handler!rewrite!1!regex = ^/(.+)\?(.*)$
vserver!30!rule!300!handler!rewrite!1!show = 0
vserver!30!rule!300!handler!rewrite!1!substring = /vbseo.php?vbseourl=$1&$2
vserver!30!rule!300!match = request
vserver!30!rule!300!match!final = 1
vserver!30!rule!300!match!request = ^/(.+)\?(.*)$
vserver!30!rule!300!only_secure = 0
# any other query without query string (and without the .php) is passed by
vbseo.php
vserver!30!rule!200!handler = redir
vserver!30!rule!200!handler!rewrite!1!regex = ^/(.+)$
vserver!30!rule!200!handler!rewrite!1!show = 0
vserver!30!rule!200!handler!rewrite!1!substring = /vbseo.php?vbseourl=$1
vserver!30!rule!200!match = request
vserver!30!rule!200!match!final = 1
vserver!30!rule!200!match!request = ^/(.+)$
vserver!30!rule!200!only_secure = 0
# finally we have this one, which now I'm not sure why is it needed.
vserver!30!rule!100!handler = common
vserver!30!rule!100!handler!iocache = 0
vserver!30!rule!100!match = default
vserver!30!rule!100!match!final = 1
##########################################
****** --> You can see, that I added the inlinemod.php before the .php
generic handler. Why?
Because the .php handler just under execute any .php without passing through
.php.
Some files are missing there, and we should add them: newpost.php /
newthread.php.
They are important because when anybody makes a new post they're redirected
to the "pretty" url from
vbseo.php, but if we dont put them there they'll get an "old style" url, and
it's possible that they'll Copy&Paste
it to anywhere else :)
Please, let me know if you need some help on that :-)
Cherokee + byte compiling accelerator is the good way, you'll get a x2 / x3
speed increase on vbseo (really :) )
2008/11/3 Tom Peach <[EMAIL PROTECTED]>
> Hi All,
> I am launching a new forum soon running vBulletin with vBSEO. I really
> want to use Cherokee webserver since I find it considerably more
> "tidy" than nginx and Lighty.
>
> I'm struggling with rewrite rules for vBSEO. I know this has been
> discussed previously but I didn't see any positive conclusion of the
> thread.
> http://www.mail-archive.com/[email protected]/msg00038.html.
>
> So here we go, http://www.shootingthecheese.ch/, rewrites are working
> for me but for some reason images are not displaying.
>
> I've used the lighty rules as internal redirects (substitution) in the
> following order
> 1. "^/(sitemap.*\.(xml|txt)(\.gz)?)$" =>
> "/vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1",
>
> 2. "^(/(admincp|modcp|clientscript|cpstyles|images|customavatars)/.*)$" =>
> "$1",
>
> 3. "^(/favicon\.ico|/robots\.txt|.*clear\.gif)$" => "$1",
>
> 4. "^/(.+)\?(.*)$" => "/vbseo.php?$2",
>
> 5. "^/(.+)$" => "/vbseo.php"
>
> If I remove rules 2 and 5 I get my images back but the rewrite for
> forums breaks (when I remove 5). As I understand (I'm a novice at
> this) rule 2 should basically rewrite the the URL as itself, this is
> the one that should make my images accessible! It's strange because
> the link to my admin cp works fine, but images don't.
>
> Do you have any idea what is wrong with these rules? Getting my images
> working is currently all that is standing between me and Cherokee :-(
>
> I've attached my cherokee.conf, any help or advice you can offer would
> be greatly appreciated.
>
> Best Regards,
> Tom
>
> _______________________________________________
> Cherokee mailing list
> [email protected]
> http://lists.octality.com/listinfo/cherokee
>
>
--
Miguel Angel Ajo Pelayo
http://optimizacionweb.es
+34 91 120 1798
+34 636 52 25 69
skype: ajoajoajo
_______________________________________________
Cherokee mailing list
[email protected]
http://lists.octality.com/listinfo/cherokee