waka8*stakes

〜馬絵+林檎+Wordpress〜

自分だけの短縮URIが簡単に持てるYOULSを入れてみた

yourls_installing

今ではtwitterにリンクを入れるという用途でよく使われてる感じがするけど、その前からプロバイダのホムペスペースや無料ホムペスペースなどのサービスで使われるhttp://www.hogehoge.ne.jp/~myaccount/みたいな長いURIを短くして覚え易くするとか、アフィリエイターがサイトに埋め込んだ広告リンクを隠す為に使われてました。そのための有料ツールもあったようですが…。

それがなんとオープンソースのYOURLSを使えば自分で無料で(別のドメインとサーバーをを使うならそれらの使用料は必要)簡単に用意することが出来るんです。WordPressを自分でインストールしてブログってる方ならちょちょいのちょい♪です。これで素人でも手軽に『私だけの』転送/短縮URLが持てます。

YOULSを設置してみる

用意するもの

  • YOURLS(最新版はyourls-1.5.zip)
  • ドメインとサーバー(使用中のでもいい)
  • データベース(MySQL)

短縮用のドメインを作るのが望ましいですが、2文字のTLD(.jpとか.cc)は高いし、.comで4文字ぐらいのドメインなど最早新たに登録出来ないかと思います。うちのドメインはもともと短めなのでs.waka8s.comと新たにサブドメイン使って運用する事にしました。

アップロード前にする事

MySQLが必要なので新規作成しておきます。そしてYOURLSのzipを展開したら、readme.htmlを開き、Install/Upgradeタブをクリックして手順を見ながら進めます。

まず、includesフォルダ内のconfig-sample.phpをコピーしてuserフォルダに貼付けます。config.phpに名前を変更してテキストエディタで開き以下の部分をお使いのサーバー等の仕様に変更していきます。どこかで見たような感じです。そうWordPressな人ならインストールする前にいじるconfig.phpと同じようにすればいいのです(config-sample.phpのsampleを抜いてリネームというところから同じ)。

10〜23行目:MySQLの設定
/*
 ** MySQL settings - You can get this info from your web host
 */

/** MySQL database username */
define( 'YOURLS_DB_USER', 'MySQLユーザー名' );

/** MySQL database password */
define( 'YOURLS_DB_PASS', 'MySQLパスワード' );

/** The name of the database for YOURLS */
define( 'YOURLS_DB_NAME', 'yourls' ); /*YOURLSに使うデータベースの名前*/

/** MySQL hostname */
define( 'YOURLS_DB_HOST', 'localhost' ); /*データベースのホスト名*/

/** MySQL tables prefix */
define( 'YOURLS_DB_PREFIX', 'yourls_' ); /*データベースの接頭辞*/
29〜53行目:オプション
/*
 ** Site options
 */

/** YOURLS installation URL, no trailing slash */
define( 'YOURLS_SITE', 'http://YOURLS設置場所のURI' ); /*末尾にスラッシュを付けてはいけません*/

/** Timezone GMT offset */
define( 'YOURLS_HOURS_OFFSET', 0 ); 

/** Allow multiple short URLs for a same long URL
 ** Set to true to have only one pair of shortURL/longURL (default YOURLS behavior)
 ** Set to false to allow multiple short URLs pointing to the same long URL (bit.ly behavior) */
define( 'YOURLS_UNIQUE_URLS', true );

/** Private means protected with login/pass as defined below. Set to false for public usage. */
define( 'YOURLS_PRIVATE', true ); /*自分用にしてパスワードを設定するなら true 、公開するなら false*/

/** A random secret hash used to encrypt cookies. You don't have to remember it, make it long and complicated. Hint: copy from http://yourls.org/cookie **/
define( 'YOURLS_COOKIEKEY', '}WWrxa2Xzfq}#21%6vadY3mFTgS-C[5J4b7S1PX4' ); /*そのまま使わない方がよい。http://yourls.org/cookie で表示された文字列をコピペでおk*/

/**  Username(s) and password(s) allowed to access the site */
$yourls_user_passwords = array(
    'ユーザ名' => 'パスワード',
	'ユーザ名2' => 'パスワード2'		// You can have one or more 'login'=>'password' lines (自分だけで使うなら2つ目のユーザ名、パスワードは削除しておきましょう。)
	);

アップロードとインストール

yourls_installing

config.phpをお使いのサーバーにあわせたら指定したディレクトリにアップロードします。そしてアップロード先のURL(ex.http://s.example.com/ なら http://s.example.com/admin)にアクセスし、[Install YOURLS]ボタンを押します。ここで無事にインストールが終わったら上記で設定したユーザー名とパスワードを入れてログインします。

yourls_install_failed

しかし『.htaccessできんかったやないか!』と怒られたので、ファイルを作成します(セーフモードのせいかな?自分のMacのMAMP鯖では一発でインスコ完了したんですが)。インストールの際にPHP自身が.htaccessを作るようになってるのかもしれません。気を取り直して『how』をクリックして.htaccessの作り方を見に行きましょう。

# BEGIN YOURLS
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /yourls-loader.php [L]
</IfModule>
# END YOURLS

上記のコードをテキストファイルにコピペしてhtaccess.txtと名付けてYOURSのルートディレクトリにアップロードし、.htaccessと名前を変えます。その後ログインします。

とりあえず使ってみる

yourls_admin

ログインしたら、3つぐらいテスト用?にURLが出来上がってます。YOURLS本家と作者のサイトとブログの様です。

使い方

ページ上部の[Enter the URL]の横のテキストエリアに短縮したいサイトのURLを入れ、[Shoten The URL]ボタンをクリックするだけです。簡単!

基本的にドメイン以降は1から順に番号を付けるようになってますが、Custom short URLの欄に好きなキーワードを入れれば、例えばhttp://example.com/keywordの様にURIに好きなキーワードを付ける事ができます。

ようやくWP to Twitterと連携

管理画面のWP to Twitter設定ページ下部、YOURLSアカウント設定に進みます。

wptotwitter_yourls_setting

WPと同じサーバで動かしてるならYOURLS 『設定ファイルへのパス(ローカルインストールの場合)』欄ににサーバのルートからconfig.phpファイルまでの絶対パスを入力します。違うサーバなら『YOURLS API へのパス (リモートインストールの場合)』欄にhttp://で始まるapi.phpまでのURIを入れます。その下にユーザー名とパスワードを入れる欄があります。

URIのスラッグを付ける方法を以下から選び、[YOURLSアカウント設定を保存]をクリックして設定完了です。

  • Post ID for YOURLS url slug.(投稿IDをスラッグにする)
  • Custom keyword for YOURLS url slug(カスタムキーワード、好きな文字列をスラッグにする)
  • Default: sequential URL numbering. 1(1から順に番号を付ける:デフォルト)

更に詳しく…お世話になったサイト様

以下のページにもっと詳しく書かれてます。