<p>I really enjoy having "pretty" URLs (e.g. <code>/Products/Edit/1</code> instead of <code>/products.aspx?productID=1</code>) but I'm at a loss on how to do this for pages that let you search by a large number of variables.</p>

<p>For instance, let's say you have a page that lets a user search for all products of a particular type with a certain name and near a specific address.  Would you do this with really long "pretty" URLs</p>

<pre><code>/Products/Search/Type/{producttype}/Name/{name}/Address/{address}
</code></pre>

<p>or just resort to using url params</p>

<pre><code>/Products/Search?productType={producttype}&amp;name={name}&amp;address={address}
</code></pre>

The MVC (Model View Controller) framework is designed specifically to tackle this issue. It uses a form of url rewriting to redirect actions to pages and provides just the functionality you're looking for. It makes handling pretty urls a breeze.
With regard to the length of URLs, id still use pretty urls but a particularly long URL may be an indication that you may want to reconsider your grouping of the items, alter the classification if you will so Products/{NAME}/{Address} without intermediary url parts.
Examples of the MVC framework can be found at:
.Net -
http://www.asp.net/mvc/
PHP -
http://www.phpmvc.net/
Java -
http://struts.apache.org/