This evening I took some time to create a custom URL shortener, using the open source tool yourls. I’ve seen Tony Vincent use custom URLs in his tweets and at conferences for several years. Tony has setup the domain and website for his custom URLs. I setup I won’t exhaustively detail all the steps I followed this evening to create this, but I will document them briefly in case you’re interested in creating a similar site and service. - Wesley Fryer's URL Shortener

Before sharing setup steps, here are a few reasons to consider creating and using your own URL shortener:

  1. Shortened URLs provide a handy way for people to get to your handouts and resources for specific lessons, PD or workshop sessions.
  2. It looks cool. (Seriously, it does, and it can be quite professional to use a custom URL shortener!)
  3. Some schools block URL shortener websites like and tinyurl, so by using a custom shortener site you may increase accessibility for your links.
  4. People can quite easily and accidentally mis-type the characters which follow a randomly-generated shortened URL… and this can have a surprising result. (Taking them to a site you didn’t intend.) If people mis-type your shortened URL, as long as they get the domain right ( in my case) they won’t get someone else’s website… at worst they’ll be redirected to another website I’ve personally shared in the past.
  5. The service provides interesting details about numbers of clicks, source countries for clicks, etc.
  6. The service won’t expire or go away, as could potentially happen with commercial services.

These were the main steps I followed to create my custom URL shortener this evening.

1. I registered the domain on GoDaddy for $9. I used the DNS addresses for my existing website with my web host when I registered the domain.

2. I added my new domain as an “add-on slot” to my hosting account with Siteground. Since I already pay for a VPS, this was free. There may be a cost for this depending on the terms of your hosting plan. See my recent 12 minute screencast on YouTube, “Create a subdomain for a website as an add-on slot” for specific details on these steps.

3. I downloaded the source code for yourls and then uploaded the files to my hosting account using CyberDuck. (free)

4. I used KompoZer (free) to create a basic, ‘placeholder’ website at the root of my site. Again, was my model. Like Tony I chose to include a Twitter widget. I created my graphic using Skitch. (free)

5. I used CPanel on my hosting account to create a new MySQL database with a user with full access rights. I noted these credentials (database name, user name and user password) and added them to the config.php file for yourls. This is explained in the README file which is included with the downloaded files. The process is very similar to a new self-hosted WordPress installation.

6. I visited the website and finished installation of yourls.

7. I installed the browser buttons for yourls in Chrome. These permit one click shortening and custom URL shortening (where you specify the name which follows your domain) to streamline this process.

8. I installed the WordPress plugin for yourls. Unfortunately I ran into a problem (documented here and here) with the plugin inexplicably generating hundreds of shortened links for past posts. Fortunately these were not tweeted out, but I did have to manually delete them all. I didn’t find a solution to the problem, so I deactivated the plugin and re-activated Twitter Tools which uses At some point I’d like to use yourls instead, but I’m not going to spend time troubleshooting this more tonight.

This is the dashboard view which Yourls provides. So far I’ve just shared three links, but it will be good to have access to my specific statistics when desired.

YOURLS admin dashboard

Of the reasons I highlighted initially to consider using a custom URL shortener service, #2 and #3 are the real big ones in my book. You do NOT want students in a class you’re teaching or participants in a PD session you’re leading to accidentally link to an offensive or inappropriate website because they mis-typed a random string of characters in a or address. Using a custom URL shortener can eliminate that possibility entirely. The accessibility issue is a big one as well.

What do you think of custom URL shorteners? The steps involved to create this are beyond those most teachers are going to want to follow, but it’s GREAT that open source software is available which can make this a “doable” process for people and organizations who want to follow it.

Many, MANY thanks to Tony Vincent for sharing so many great ideas and being such an inspiration as a teacher-leader. If you don’t already, follow Tony on Twitter and subscribe to his great blog, Learning in Hand. Also don’t miss his outstanding presentation for the 2010 K-12 Online Conference last year, “Project Based Learning in Hand.”

Technorati Tags: , , , , ,

If you enjoyed this post and found it useful, subscribe to Wes' free newsletter. Check out Wes' video tutorial library, "Playing with Media." Information about more ways to learn with Dr. Wesley Fryer are available on

On this day..

Share →

8 Responses to Creating a Customized URL Shortener with YOURLS

  1. Tony Vincent says:

    Wes, I love having my own URL shortener and you did a great job listing the reasons why it’s great to have one. Right now my YOURLS admin dashboard for says it has shortened 1044 URLs and has tracked 248,187 clicks.

    I bought my domain ( and the hosting from It turns out that GoDaddy has an option to install YOURLS on their hosting accounts. So when I set it up, it was really a matter of buying the domain and hosting and clicking a check box. 🙂

  2. Paul Richardson says:

    Hey Wes,

    Thanks for this tip, I had no idea this WordPress plugin was available! I’ve had my own custom URL shortening domains for a year or two since Google Labs made their shortening app part of the freebies that come with Google Apps Standard.

    Its pretty easy rolling out to Apps users if your the Apps admin and there’s a browser plugin that will still let you use your own domain, for example; is the domain I use the browser plugin with (and metrics)

  3. Wesley Fryer says:

    Very cool, that’s definitely a ‘fewer click’ option than I did or knew about. 🙂

  4. Wesley Fryer says:

    Good tip, Paul – thanks! I haven’t used Google Apps Standard or Google Apps Edu personally so that’s good to know. 🙂

  5. Wesley Fryer says:

    Using a custom domain with definitely is a lot easier and faster than what I’ve described here, Paul! I read a bit about it tonight, an informational link is available on:

  6. […] Creating a Customized URL Shortener with YOURLS ( […]

  7. Ian D says:

    Hey Wes and Tony,

    gotta say both your sites look reet cool but I can’t seem to find the actual shortener bit? Am I missing something?Also I’ve installed yourls and have access to the admin section but I can’t seem to get it running as a standalone website like yours. Any help and advice greatly appreciated.



  8. Wesley Fryer says:

    Ian: Did you setup a MySQL database for it on your site? As I recall it was very similar to setting up a new WordPress installation. If you have access to the admin section it sounds like you’re up and running… Maybe what you need is to upload the files/install it at the root level of a new domain you have on a new hosting account site or as an “add on slot” for an existing hosting site. This tutorial helps with the add on slot steps:

    Please let me know if this helps, and if you have more questions. 🙂

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.

Sharing from Matthews, North Carolina! Connect with Wes on Mastodon.