JoomlaSEO » History » Revision 5
Revision 4 (Anonymous, 2008-07-31 21:10) → Revision 5/8 (Anonymous, 2008-09-17 15:32)
1 - Install Joomla[[BR]] 2 - Go Joomla admin -> Global Configuration -> Site. Enable '''Search Engine Friendly URLs''' and '''Use Apache mod_rewrite'''[[BR]] 3 - In lhttpd add this site description, where change ''' {{{ $HTTP["host"] }}} and {{{ server.document-root }}} to you's settings[[BR]] [[BR]] Example {{{ $HTTP["host"] =~ "(^|\.)site\.com$" { server.document-root = "/usr/local/www/data/site.com" url.rewrite-once = ( "^images*\\.(jpg|jpeg|gif|png)" => "$0", "^/administrator.*$" => "$0", "^/mambots.*$" => "$0", "(/|\\.htm|\\.php|\\.html|/[^.]*)$" => "/index.php" ) } }}} [[BR]] Instead of this you can do the rewrites it using lua. Create a new file and add: {{{ -- little helper function function file_exists(path) local attr = lighty.stat(path) if (attr) then return true else return false end end function removePrefix(str, prefix) return str:sub(1,#prefix+1) == prefix.."/" and str:sub(#prefix+2) end -- prefix without the trailing slash local prefix = '' -- the magic ;) if (not file_exists(lighty.env["physical.path"])) then -- file still missing. pass it to the fastcgi backend request_uri = removePrefix(lighty.env["uri.path"], prefix) if request_uri then lighty.env["uri.path"] = prefix .. "/index.php" local uriquery = lighty.env["uri.query"] or "" lighty.env["uri.query"] = uriquery .. (uriquery ~= "" and "&" or "") .. "q=" .. request_uri lighty.env["physical.rel-path"] = lighty.env["uri.path"] lighty.env["request.orig-uri"] = lighty.env["request.uri"] lighty.env["physical.path"] = lighty.env["physical.doc-root"] .. lighty.env["physical.rel-path"] end end -- fallthrough will put it back into the lighty request loop -- that means we get the 304 handling for free. ;) }}} Then on your lighttpd.conf add something like this: {{{ $HTTP["url"] !~ "^/(xcache-admin|awstatsclasses|awstatsicons|awstatscss|awstats|cacti|webmail|phpmyadmin)(/|$)" { index-file.names = ( "index.php" ) magnet.attract-physical-path-to = ( "/usr/local/etc/lighttpd/lua/domain.com/www.lua" ) } }}} !