It’s Alpha but it’s stable. For now!

As of writing, YOURLS version number says “1.6-alpha“. Despite boasting an intimidating “alpha” tag, it’s currently completely stable: I didn’t introduce yet any major change, especially in the DB structure, so feel really free to update today using SVN or with a nightly build. For the record, I’m using that version on and my personal, amongst others.

This said, expect some breakages in the future: I’ll slightly refactor the way action works, I’ll change a bit API returns, probably a few other things, and of course, there’ll be DB upgrading which is always the scary operation of all :)

After the stable version is released, there will be thorough documentation to help plugin authors update their code. No worries, that’ll be quick and simple.

When I’ll start implementing potentially breaker features, I’ll change the version number to something more frightening such as “1.6-alpha-dont-use“, so be sure to check it before you update on a live setup.

So, if you’ve always had ideas or thoughts for something crazy but not necessarily backward compatible, now might be a good time to suggest them :)

Short URL to this post:

25 thoughts on “It’s Alpha but it’s stable. For now!

  1. Hello ozh,

    I am an active user of yourls, and I thank you for developing it.

    Feature request for 1.6:

    The URLs I link to using my yourls setup are prone to expiring after a few months/years given that the web pages concerned are on sites of public authorities who tend to rebuild their sites every once in a while, in a manner not preserving previous content or not preserving the previous URL structure, etc.

    This annoys me, because some (in fact many) shortened links stop working after a period of time.

    It would be great if yourls users could have a simple (preferably fully automated) way of:

    a) Preserving the pages to which they have created yourls shortened links, by saving the full HTML code (and hopefully also the images, pdf files, word files, and whatever else) of the target page of each URL linked using yourls. I see this as a kind of personal archive/backup of material I have linked to. Content could be saved to one’s own computer or preferably to a choice of cloud storage options.

    b) Linking to that archive/backup (assuming cloud storage), ensuring that when a link is clicked, the content is still available:

    b1) point direct to the stored version and not to the original site at all.
    b2) on condition that the original link has expired the link is automatically redirected to the stored version instead.

    Thank you for considering this. I can clarify my request further if needed.

    I have also been thinking of spidering and saving everything from a bunch of websites fully once every day to keep my own archives, as I get frustrated when content I know was there, suddenly isn’t there anymore.


      • I am curious to know about it too. Is that based on a third party script or a custom coded?

          • @Flavr

            It is pretty well coded. I like the automated shortening and additional options like password protection.

            I am curious to know if you could open source it as Ozh suggested. It is helpful to everyone.

            Looking forward for your kind response:)

      • naaa ;p! I will open source it only if we change the direction of the site… Cause we still dont know what flavr in the end gona be, short url service or something more :9!

  2. @Ozh we are now using custom platform based on some google apis etc.. But we would love to move for yourls… So when we get the stable version out ! And yeah the facebook / twitter auth plugin would be awesome!

  3. Thank you for yourls and making it possible for a self-hosted solution which doesn’t rely on anyone else or send data to anyone else! And thanks for continuing to improve it!

    One quick question I hope you don’t mind being asked here, is if you have a file download connected to a shortened link, and then you Edit the yourls entry to point to a new file, it seems that sometimes yourls serves up the other file, – I realize sometimes this is the browser cache. But if I was distributing files to users by giving them the shortened link, how can I get yourls to force the new file to them when they hit the link again and haven’t cleared their browser cache? Sorry, I’m not a php expert so didn’t want to mess with it in case there was a setting or something. thx!

    • By default and per industry “good standard”, YOURLS serve browsers a 301 header, which says “Redirect – Moved Permanently”. This means, when the client (browser, googlebot, whatever) request the same resource, they don’t check what http://sho.rt/blah sends to — they just go to the long URL, since it’s “move permanently”.

      For your case (ie serving maybe different long URL for the same short URL, you’d need a plugin that would tell client (browsers, googlebot, whatever) that “everytime, don’t assume location, poll me instead” (aka 302 Redirect + “dont cache” header). See wiki page

  4. I second snme’s kudos about this YOURLS community. We should have rolled out our own YOURLS service by now, but our company was relying on the redirect services of which just shut down this last Friday for good, so there may be a flood of people now looking at this option like myself for a different serve up of re-directs not quite offered by the likes of

    My only questions, and my apologies if these are discussed elsewhere, are:

    Can you code meta data for your shortened URLs such as a meta title and description?

    Can the redirect occur inside of an iframe so the browser still displays your title and the short.url/whatever web address after the re-direct occurs?

  5. Not sure what a “meta title and description” would be for a short URL. Regarding the iframe stuff, there’s a toolbar plugin included that does what you describe.

    And anyway, there’s a plugin API in YOURLS: if you miss a feature that’s not implemented out of the box, you just code (or get coded) a plugin, simple as that! See

  6. Can I have a single YOURLS server for multiple domains hosted on the same server? Or do I need to create a YOURLS for each domain?

Comments are closed.