If you look at JumpHunt, Digg, (and this blog), at no point to do you see ".php" written at the end of any page. Whenever you make a GET request ( the ?q=blah at the end of search strings), you don't see the ? either.
The way this is possible is through the mod-rewrite module in .htaccess file. The first thing JumpHunt does is eliminate "www" at the beginning the URL. Copy this to your .htaccess:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com [nc]
RewriteRule (.*) http://example.com/$1 [R=301]
That is telling Apache to take whatever site you landed on, if you wrote "www", then redirect you (code 301) to the site without www.
To get rid of the "index.php?page=blah" and use nice the nice "example.com/page/blah".
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com [nc]
RewriteRule (.*) http://example.com/$1 [R=301]
RewriteRule ^page/(.*)/?$ index.php?page=$1 [L]
The (.*) means "take whatever is written there and place it at the end of $1. You can have multiple variables if you wish:
RewriteRule ^user/(.*)/(.*)/?$ index.php?user=$1&command=$2 [L]
The first (.*) will get placed at $1. The next (.*) is placed at $2.
There are numerous other tricks, but hopefully, this will get you going.







