GuillotineはGitHubの短縮URLサービスでも使われているRuby製のライブラリです。

最近GitHubで短縮URLが提供開始しました。ドメインはGit.ioです。そのGit.ioを構築するのに使われているのがGuillotineになります。


インストールはRubygemsからできます。Sinatraも一緒にインストールされます。


最もシンプルな形のコードです。


サーバを立ち上げます。


サーバに対してURLをパラメータとしてポストします。すると短縮URLがLocationヘッダーに入って返ってきます。


サーバ側では処理です。短縮URLにアクセスされると本当のURLへリダイレクトします。

Guillotineはオンメモリの他、SequelAdapterと組み合わせてDBを利用したりRiakAdapterと組み合わせてデータをクラウドに保存することもできます。さらに利用できるドメイン制御も元々組み込まれています。Git.ioではRiakを使い、Rackspace上にデプロイして使われています。

GuillotineはRuby製、MIT Licenseのオープンソース・ソフトウェアです。

MOONGIFTはこう見る

短縮URLサービスは嫌というほど存在します。ここまで増える要因となったのは間違いなくTwitterの存在です。しかしリダイレクト式であるためにスパムやウィルス配布の踏み台にされている短縮URLも存在します。そうした危険を避ける目的でも、独自の短縮URLサービスはとても優位です。

オープンソースの短縮URLソフトウェアも多数存在しますので、その中から自分たちのサービスにあったものを選択すると良いでしょう。サイト独自のものであれば別ドメインから使えないようにするといった工夫も必要です。Guillotineはライブラリ形式なのでカスタマイズも容易そうです。

via Git.io: GitHub URL Shortener - GitHub

technoweenie/guillotine - GitHub