« Posts under Internet

tumblrの魅力

DSC_0681
最近気になっている「tumblr」なるソーシャルサービス。twitterと並んで「ミニブログ」と表現されることも多いtumblrだが、しかしこの2つのWebサービスの楽しみ方はまったく異なると言えるもの。twitter同様にやること自体はとてもシンプルなtumblrだが、できることはとても奥深く興味をそそられるのだ。tumblrは,twitterが日本で火がついて盛り上がっていた少し後,2007年の4月~5月にかけて話題になりはじめたサービスだ。当時twitterが(一部かもだが)爆発的なブームだったこともあって,tumblrがスタートした2007年3月の時点での日本人ユーザはあまり多くはなく静かなものだったのではないだろうか。僕がtumblrをはじめたのは2009年ぐらいで、しばらく利用はしていなかったのだけど、どうもおもしろそう。僕が思うtumblrのおもしろさは「シンプル,かつ自由で創造的」ということ。tumblrは,通常のブログのように自分で記事を書いたり画像を載せたりすることもできるが、何より最大の特徴はネット上で見つけた文章や画像や動画を簡単に「リブログ」という操作でどんどんスクラップできることにある。「何をテーマに集めるか」だけでもそこには特徴が生まれ、その可能性は無限大だ。自分が気になる情報だけを集めたりすれば自分だけのメモとしても使えるし、もちろん,自分が見たものを携帯で写真に撮って掲載したり…といった使い方も可能です。

InfoseekのWebサービスが来月で終了

恵比寿
※D700+TAM DiSP 90mm (272E)

先日、インフォシークより「【重要】インフォシーク iswebライト 終了のお知らせ」と題したメールが届いた。 内容は、「インフォシーク ユーザサポートからのお知らせ」に掲載されている内容と一緒であり、2010年10月31日をもって無料ホームページサービス「インフォシーク iswebライト」が終了し、有料サービスのみになる・・・という案内であった。 「iswebライト をご利用のみなさまへ」 「インフォシーク ユーザサポートからのお知らせ」 この「インフォシーク iswebライト」であるが、無料ホームページサービスとして、インターネット創成期からこれまで合併や統合を重ねた歴史があり、運営もTripod→インフォシーク→楽天と移り変わってきた。 ラフな記述ではあるが、統合の変遷は確かこんな感じだったと思う。 Xoom →↓ Tripod→Lycos→Infoseek→↓ freeweb→→→インフォシーク→楽天 HOOPS! →→↑ こうやってみてみると、ボク自身も Tripod や Xoomの時代から使ってきたこともあってなんだか懐かしくもなり、突然のサービス終了とは何とも残念で淋しくもある。 サービス終了の理由として、『インターネットの発展に伴い情報発信ツールも多様な進化を遂げており、無料のホームページスペース提供サービスとして運営してきた「インフォシーク iswebライト」は当初の役割を終えたものと判断・・・・』とはあるが、要はホームページを無料提供して広告収入を得るといった従来のビジネスモデルが成り立たなくなってきたということなのだろう。古参の無料ホームページサービスがここ数年で次々に閉鎖されてきており、また、ドリコムブログやJUST BLOGなどの無料ブログも相次いで閉鎖されていることからも、インターネットビジネスにおける無料サービス自体の淘汰が始まってきているのではないかとも思えてしまう。 無料の「インフォシーク iswebライト」は終了しても、有料版の「iswebベーシック」については、当面の間は残るようではある。ただ、年間6,300円という料金については有料ホームページとしては非常に割高であり、これまでのURLがそのまま使えるというならともかく、これからこの有料版に移行する人も少ないだろう。楽天のことだから、有料版についてもサービス終了のタイミングを窺がっているようにも思えるし、結局のところはこれ以上システムに金をかけられないというのが本音なのかもしれない。。。 「インフォシーク iswebライト」にあるボクのHPはまだ残っているが、普段の運用はもう何年も前にブログに移行してしまっているので、ずっとほったらかしで、もう何年も更新をしていなかった。(使うことはないと思うが)いちおうバックアップもとってあるからいつ閉鎖されても問題はないけど、今回のこれからの2ヶ月で引越しを迫られた形のユーザーも少なくはないだろう。移転検討中のユーザーは、せっかく移転したのに移転先もすぐに閉鎖なんてこともなりかねないから、移転先は慎重に選んだほうかいいかもしれない。

WordPressの記事にFlickrの写真を直接貼り付ける

移行の際にも感じたのだが、写真が増えてくるとWordPressのメディアライブラリですら管理が煩わしくなる。ボクは、オンラインアルバムや写真の整理には以前からFlickrを利用していたのだけど、やはりFlickrの方がWordPressのメディアライブラリよりもずっと使い易く高機能である(英語版しかないのが少々面倒ではあるが)。せっかくなので、WordPressの記事に掲載する写真も、Flickrから直接張り付けられないものか・・・と思っていたら、素晴らしいプラグインがありました。

WordPress Media Flickr (ver 1.1.1)
http://wordpress.org/extend/plugins/wordpress-media-flickr/

インストールは簡単で、作者のページで掲載されています。
http://factage.com/yu-ji/2008/03/31/wordpress-media-flickr-1_0_0/#comment-519
作者のYu-ji!さん、ありがとうございました。

今回は
・WordPress 3.0.1
・WordPress Media Flickr v1.1.1 プラグイン
・Flickrアカウント
で動作確認できました。

1. ダウンロードしてきて解凍(WP3.0の場合は、プラグインから検索&インストールでできます)
2.FTPなどで/wp-content/plugins/のplugins内にアップロード
3.WordPressの管理メニュー「プラグイン」を開いて、「WordPress Media Flickr」を有効にします
4.管理メニュー「設定」に「Media Flickr」が表示されているはずなので選択します。
5.二つボタンが並んでいるので、ユーザー情報に自分のflickrのユーザー名を入力して上のボタンを押します
6.Flickrのサイトに接続され、以下の認証画面が表示されます。「許可していいか?」と書いてあるので、この例では右のNEXTボタンを押します。
Media Flickr
6.Flickr側で「許可しますた」と表示されるはず(英語)です。もう一度WordPressに戻って、今度は下の「完了」ボタンを押します。
7.おわり

記事の投稿画面のツールバーにFlickrアイコンが増えていると思います。
Media Flickr
このFlickrアイコンをクリックするとWordpress Media Flickrのダイアログが表示されて、自分のFlickrに登録してある写真が一覧表示されてるはず。さらに、写真をクリックすると写真の掲載位置を選択する画面が表示されます。位置を選択して「挿入」をクリックすることで記事に貼り付けることができます。

Let’s enjoy

mod_rewriteを使ってのリダイレクト設定

青葉城
※D700+TAM DiSP 90mm (272E)

WPへの移行にあわせてドメインも移転した。検索エンジンの結果で表示されるページのURLが変更されるため、サーバー サイドの301リダイレクトを使用してリダイレクト設定をおこなった。301ステータスコードはページが新しいサイトへ移動したことを意味するので、これで検索エンジンが移転先のページにたどり着くことが保証される。ちょっとしたSEO対策にもなるので、忘れないうちにメモしておこう。

■基本のリダイレクト – 「Redirect permanent」を使う301リダイレクト設定
基本的に301リダイレクトは、以下の書式で.htaccessファイルに記述すれば可能だ。
ただ、試行の結果、この方法ではボクの目的を遂げることはできないことがわかったので、今回の移行では使っていない。

Redirect 301 /oldblog http://example.com/newblog

もしくは、

Redirect permanent /oldblog http://example.com/newblog

2つの構文はどちらも同じ意味であり、「/oldblog 」がリダイレクト元、「http://example.com/newblog 」がリダイレクト先である。
ちょっと紛らわしいかもしれないが、リダイレクト元はURLのルートからのパスを記述する(サーバーの物理的なフルパスなどではなく、大雑把に言うならURLからドメイン名を省略したもの)。そして、リダイレクト先には「http://~」といったURL全体を記述する。
後者の構文では「permanent」のくだりが「301(完全な移動)」であることを伝えてくれるステータスになる。「permanent」がなく「Redirect」のみだと、検索エンジンには「302(一時的な移動)」と解釈されてしまうので、サイトの移転など二度と戻る可能性がない場合は必ず「permanent」を記述するようにする。

参考:
301リダイレクト

■mod_rewriteを使っての301リダイレクト設定
ボクが今回使ったリダイレクトがこの方法だ。前述のRedirect permanentを使う方法では、クエリ付きの動的なページは、うまく動作してくれなかった。クエリとは、サーバーに渡す値や文字列データを指定するための「?」の後にある引数やその数値のことで、クエリを用いた動的なページとは”aaa.php?id=01”などのようなページリンクのことである。
他の方法を探していたところ「Rewrite」を使う方法が見つかったのではあるが、このRewriteで使われる正規表現がややこしい。一つ試しては失敗、また違うものを試しては失敗・・・・といった試行錯誤をしばらく繰り返していた。
そんなこんなだったが、こんなボクでもようやくRewriteの使い方が理解できてきたのでメモしておくことにする。

ボクがしたかったのは、
[text gutter="false"]
1.サブディレクトリを変更
2.拡張子のphpは取り除く
3.アンダースコアが含まれる場合、ハイフンに変更
4.日付アーカイブの場合にはパスを変更
[/text]
といったリダイレクトである。
つまり、こういうことだ。

http://from_example.com/blog/archives/2010/09/post_123.php

http://to_example.com/blog/2010/09/post-123/

http://from_example.com/blog/archives/2010/09/

http://to_example.com/blog/2010/09/

試行錯誤の末、以下のように .htaccess を記述することで意図した通りのリダイレクトを実現できた。もっとスマートな方法はあるとは思うけど、とりあえずは問題もなさそうである。
[php num=1 font_size="60%"]
RewriteEngine on
RewriteBase /blog/archives/
RewriteRule ^([0-9]+/)([0-9]+/)([^_]+)_([^_]+)_([^_]+)_([^_]+)_([^_]+)\.php$ http://to_example.com/blog/$1/$2/$3-$4-$5-$6-$7/ [NC,R=301,L]
RewriteRule ^([0-9]+/)([0-9]+/)([^_]+)_([^_]+)_([^_]+)_([^_]+)\.php$ http://to_example.com/blog/$1/$2/$3-$4-$5-$6/ [NC,R=301,L]
RewriteRule ^([0-9]+/)([0-9]+/)([^_]+)_([^_]+)_([^_]+)\.php$ http://to_example.com/blog/$1/$2/$3-$4-$5/ [NC,R=301,L]
RewriteRule ^([0-9]+/)([0-9]+/)([^_]+)_([^_]+)\.php$ http://to_example.com/blog/$1/$2/$3-$4/ [NC,R=301,L]
RewriteRule ^([0-9]+/)([0-9]+/)$ http://to_example.com/blog/$1/$2/ [NC,R=301,L]
RewriteRule ^(.*)\.php$ http://to_example.com/blog/$1/ [NC,R=301,L]
[/php]
この.htaccessファイルを、転送元サーバ(旧サーバー)上の2行目で指定した場所「/blog/archives/」に置く。
1行目: RewriteEngine on は、URLの書き替えができるようにRewrite機能をOnする。
2行目: RewriteBase は書き替えのベースとなるパスを指定する。後述するRewriteRuleは、ここで指定するパスで補完されることになる。なお、3行目のところで説明するが、ドキュメントルートの場合にはRewriteBaseの記述は不要だ。
3行目~6行目: この正規表現がポイント。一番シンプルな6行目を使って説明する。
RewriteRule ^([0-9]+/)([0-9]+/)([^_]+)_([^_]+)\.php$ http://to_example.com/$1/$2/$3-$4/ [NC,R=301,L]
^と$で囲まれた間がリダイレクト元のパターンを表す部分で、^が行頭、$が行末を意味する。()で囲まれている4つそれぞれが後方参照で、()はその選択範囲の境界を明示するもの。このケースでは左から順に$1~$4という後方参照が割り当てられる。
([0-9]+/)は ”一つ以上の0から9の数字列” 、そしてそれに続く"/"を意味するので、「2010/」や「12/」などの年月がここに該当する。
([^_]+)は、"_"(アンダースコア)以外の1文字以上の文字列という意味で、「post」や「123」が該当。
そして、”\.”は、正規表現の特殊文字ではなくて単なるピリオドであるという意味だ。つまりこの6行目は「2010/09/post_123.php」といったリクエストがマッチする。これにRewriteBaseで記述したパス"/"が先頭に補完されるので、「/blog/archives/2010/09/post_123.php」というリクエストに対応することになる。
ここで注意しなければいけないのは、ドキュメントルートである場合だ。「RewriteBase /」などと指定していると、「/」がさらに補完されてしまうので「http://from_example.com//blog/2010/09/post_123.php」というリクエストになってしまう。そのため、ドキュメントルートの場合には RewriteBase の記述は不要である。
リダイレクト先についてはURL全体を記述する。1つ目の後方参照である$1のところには、先に説明した一番最初(左端)の([0-9]+)の部分である「2010」などが入る。$2には左から2番目が、$3は3番目が・・・・といった具合。そして、$3と$4の間にはアンダースコア(_)の代わりに”-”(ハイフン)を挿入している。つまり先のリクエストは、RedirectBaseで補完されていた部分が破棄されて「http://to_example.com/blog/2010/09/post-123/」というリクエストに書き換わる。
最後のオプションは、「NC」でパターンについて大文字・小文字を区別しない(NoCase)、「R=301」で301リダイレクトを指定、「L」は書き換えが行われたら終了 (Last) にするため。現在の書き換え後のURLが後続のルールによってそれ以上書き換えられることを防止するものだ。
ハイフンが複数含まれるリクエストを考慮し、同じ考え方でハイフン4つまでのルールを作成した。
7行目: 同じ考え方で日付アーカイブのパターンにも対応。「/blog/archives/2010/09/」のリクエストは、「http://to_example.com/blog/2010/09/」に書き換わる。
8行目: 前述のパターンに該当しないものは全て、ドメインだけ変えてリダイレクトする。

-------------------------------
もうひとつの、動的クエリを使ったページの301リダイレクトについては、以下のような.htaccessを作成。
[php num=1 font_size="60%"]
RewriteEngine on
RewriteBase /
RewriteCond %{QUERY_STRING} ^id=(.*)$
RewriteRule ^oldblog/index.php$ http://to_example.com/newblog/%1.html? [NC,R=301,L]
[/php]
これで、例えば”http://from_example.com/oldblog/index.php?id=01”というリクエストは、”http://to_example.com/newblog/01.html”にリダイレクトされるようになる。
1行目: RewriteEngine on で、URLの書き替えができるようにRewrite機能をOn
2行目: RewriteBase は書き替えのベースとなるパスを指定
3行目: RewriteCond はクエリ部分のパターンを指定。引数は「id=」とそのまま表記し、(.*)で後方参照とする。
4行目: RewriteRule でパターンにマッチした場合の書き換えルールを指定する。
「^oldblog/index.php$」がリダイレクト元であり、RewriteBaseで指定したパスが自動的に補完されるので、この場合は「http://from_example.com/oldblog/index.php」がリクエストパスとなる。
「http://rightdice.com/newblog/%1.html?」がリダイレクト先であり、URL全体を記載する。「%1」のところにはRewriteCondで処理した後方参照(クエリ部分)である(.*)の内容が入るので。リクエストは「http://rightdice.com/newblog/index.html?id=1」などとなる。そして、最後の「R=301」で301リダイレクトを指定している。

参考:
「URLの書き換え Rewrite」
mod_rewrite URLを書き換えるApacheモジュール
「rewriteモジュールでURLを書き換えろ!」

FC2blogからWordPressへのデータ移行

今回の「MovableTypeからWordPress3.0への移行」と併せ、これまで手付かずでほったらかしてしたFC2blogからのデータ移行もおこなって、WordPressに統合した。fc2blogに残していたのはもうだいぶ前のコンテンツや記事なので、それほど気にしてもいなかったのだけど、せっかくなのでこの機会にWordPressにまとめてしまおう・・・と、気が変わらないうちにさっさとやってしまうことにした。

内容的にはMovableTypeからの移行と変わらない。
・fc2blogのデータバックアップからファイルをダウンロードする。写真も全てダウンロードする。
・秀丸やサクラエディタで画像データのリンクを置換。
・コメントにある”PASS”と”SECRET”の行を削除する。SECRETは 「管理者にだけ表示を許可する・しない」のチェック。PASSにはコメント投稿時のパスが記入されており、削除しないとWPのコメント欄に表示される。
・WordPressの ツール→エクスポートから、ファイルのダウンロードを選択。
といった感じ。
ボクは、MovableTypeの時と同様に、エディタで修正したバックアップデータを、一旦ローカル環境にあるWordPressにインポートし、カテゴリなどの細か部分で修正を加えた後に再度エクスポートした。

WordPressにインポートするとき、画像データなどは先にサーバにアップロードしておく。そうすると、インポートするときにメディアライブラリに自動的に登録されるので便利だ。
あっという間に終わってしまったが、記事も少なかったので手作業でやってもよかったかもしれない(笑)

参考:
fc2ブログからWordPressへ移行