Generic Search Engine Safe URL's on Apache

December 01, 2003
linux

A while back someone asked about implementing generic search engine safe url's with Apache's mod_rewrite module. I came up with a solution but I didn't have a chance to test it until recently. What I mean by generic are URL's such as: site.com/page.cfm/id/123 and NOT site.com/page/132, which would be specific to just one CFM template. So we only need to create the rules once. This is nice for sites with lots of templates because you don't need to create a rule for each template. Here's what you need to add in your Apache config:

RewriteEngine On
#with one url param
RewriteRule ^/(.*)\.cfm/([^/]+)/([^/]+)$ /$1\.cfm?$2=$3 [NE]
#two url params
RewriteRule ^/(.*)\.cfm/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ /$1\.cfm?$2=$3&$4=$5 [NE]

That code will work for up to two url variables, eg page.cfm/id/1/sort/price, if you need to support more you can just add additional rules. This can also work for php, jsp or whatever extension you want, just replace cfm with your extension.


12 people found this page useful, what do you think?

Comments

that's very nice, but what to do when your ISP don't give you chance to edit appache config file
If your host doesn't allow you to change apache config files you may still be able to do this in a .htaccess file. There are some coding methods to do this as well, see: http://www.petefreitag.com/item/31.cfm
Congratulations on a great web site. I am a new computer user and finding you was like coming home. Continued success.
Let it be, let it be... What a strange place here.
4fp7Ed dfv814t4fdfvmlfn093fvgbos
I can do a lot of intesting things with two fingers. ,
UquqRV http://djb3jDdmjckow30cnjcmd61l0dy.com

Post a Comment




  



Spell Checker by Foundeo

Recent Entries



foundeo


did you hack my cf?