tinyurl.com is a free URL-shrinking service (in technical terms, it is an intermediate resolution service which happens to resolve short addresses to longer counterparts).

Due to the fact that more and more websites are using CMSs which produce huge, Ellis-Island URLs, citing content verbally — and even via email — becomes difficult. Besides the obvious difficulties in typing such a complex address (if given verbally or in writing), many email clients, servers, and webmail providers still insert hard line breaks into emails somewhere between seventy-two and eighty characters. Of course, this means that clickable links emailed to others will have been broken, and will need reconstructive surgery for proper use.

tinyurl.com allows you to give it a URL of arbitrary length, which it then permanently associates with a much shorter incremental value. It manages this by keeping the input URL in a database, and sending that URL as a location header when a request for the incremental value is provided (in a way, it's a managed perfect hash function).

Thus, a request for http://tinyurl.com/nfuf9 returns a response of:

HTTP/1.1 301 Moved Permanently
X-Powered-By: PHP/5.2.1
Location: http://sehrgut.co.uk/tafelmusik
Content-Type: text/html
Content-Length: 0
Date: Tue, 24 Apr 2007 20:54:18 GMT
Server: TinyURL/1.5
Proxy-Connection: close
Age: 0

Of course, you would never see that response in your browser. It simply instructs the browser to try again at the URL given in the "Location" line, which is, incidentally, the original URL you wanted to shorten.

Other services, such as purl.com provide editable "tiny URLs", intended to ease persistent object references by allowing a single name to be "pointed" at a changing location for the object in question.