短縮 URL の YOURLS を導入する

WordPress の URL はある程度長くなってしまう。ツイートするときには短縮 URL にするとスマートだ。

これまで bitly を使ってきたが、独自ドメインで短縮 URL を使いたくなった。bitly で独自ドメインを使う方法については先日書いた。

bitly で独自ドメインを利用する – with a Christian Wife
https://wacw.cf/2018/07/16/custom-domain-with-bitly/

ただ、無料版の制限のせいか bitly で使える独自ドメインは1つだけ。複数の WordPress を運営していたりすると、各ドメインごとに短縮 URL を作りたい。

そこで自前で短縮 URL を実現する YOURLS を利用してみることにした。

YOURLS: Your Own URL Shortener
http://yourls.org/

私はレンタルサーバーのファイアバードを利用し、そこで WordPress を運営している。今回はサブドメインで短縮 URL を作ってみることにした。すなわち以下のような感じだ。

短縮前:https://AAA.com/abc/def/ghi/
短縮後:http://s.AAA.com/zxcvb

(1)ファイアバードで「サーバー管理ツール>ドメイン>サブドメイン設定」で対象のドメインをクリック。

(2)「サブドメイン追加」をクリックし、サブドメイン名で例えば以下のようなサブドメインを追加する。

サブドメイン名:s.AAA.com

すると FTP でアクセスすると、「s.AAA.com」というディレクトリが作成される。

(3)ファイアバードで「サーバー管理ツール>データベース設定>MySQL 追加」で短縮 URL 用のデータベースを作成する。文字コードは UTF-8 。

(4)3のデータベースにユーザを追加。

(5)YOURLS のソースコードをダウンロード、解凍。

Releases · YOURLS/YOURLS · GitHub
https://github.com/YOURLS/YOURLS/releases

(6)5の user/config-sample.php をコピーして、user/config.php を作成する。

(7)config.php を編集し、設定情報を書き込む。以下は特に気になったところ。

・YOURLS_SITE は http ではなく https で指定しても問題ない。
・YOURLS_DB_PREFIX はデフォルトの yourls_ のままにした。
・YOURLS_HOURS_OFFSET は日本時間にするため9にする。
・YOURLS_COOKIEKEY は長めの適当なランダム文字列を書いておく。
・ログイン用のユーザー名とパスワードもここで設定する。
・URL に大文字も含めたいなら YOURLS_URL_CONVERT を 62 にする。

(8)(カスタム URL を指定しない限り)デフォルトでは URL が連番の 1 、2 、3 ・・・のようになってしまう。bitly のように ghthgi のようなランダムな文字列になってほしい。

そこで Random Keywords というプラグインを使う。5の user/plugins ディレクトリに random-keywords とでも名前を付けたディレクトリを作成。以下のページの plugin.php をそこに置く。

GitHub – YOURLS/random-keywords
https://github.com/YOURLS/random-keywords

(9)FTP でファイアバードの s.AAA.com ディレクトリに YOURLS のファイルをアップロードする。

(10) http://s.AAA.com/admin/ へアクセスし、Install YOURLS をクリックしてインストールする。

(11)インストール完了画面の YOURLS Administration Page をクリック。7で設定したユーザ名パスワードでログインする。

(12)Manage Plugins をクリック。Random Keywords の Action 欄で Activate をクリック。8のプラグインが有効になる。

Admin interface に戻って試しに短縮 URL を作成してみたらうまくいった。

参考:
YOURLS: Your Own URL Shortener
http://yourls.org/#Install

自作短縮URL『YOURLS』とWordPressプラグインYOURLS Link Creatorの使い方 | 気まぐれ日誌・オブ・けんたくれ
http://kentakure.net/how-to-introduce-the-yourls/

自前で短縮URLを用意するYOURLS – DA[blog]:PhotoPierre
https://blog.photopierre.com/2010/11/28-2011/