 <p>Generally speaking, you don't want to divorce your URL from any semblance of meaning for the user unless you are significantly shortening it for use in character-limited settings like a Twitter post.</p> <p>That said, there are a few ways to implement this. You can:</p> <ul> <li>Pre-generate these URLs and store the cross-referenced query string in the database (use "f4cdret4" as a unique index, "a=10&amp;b=20&amp;c=30" as a second column)</li> <li>Mash them together with some kind of separator (a=10&amp;b=20&amp;c=30 becomes "a10-b20-c30")</li> <li><p>Use htaccess to make pseudo-directories (a=10&amp;b=20&amp;c=30 becomes "mydomain.com/q/10/20/30")</p> <p><code>RewriteEngine On</code></p> <p><code>RewriteRule /q/(.*)/(.*)/(.*)$ /page/play.php?a=$1&amp;b=$2&amp;c=$3</code></p></li> </ul>