カテゴリー
WordPress

本家のお世話-#7。

 10日ばかり前(8/27)から,WordPress3.2.1をXREA+上でネットワーク化しサブディレクトリ型のマルチサイトとして使おうと,これにどっぷり浸かっている。前のときに,「サブドメインの練習。」から「ネットワークの作成-#4。」までの一連の記事で,XREA上のWordPress3.2.1でのサブドメイン型のマルチサイトのお勉強の様子を書いたわけだが,あれは単にお勉強だった。しかし,これは本当に勉強になって今度のサブディレクトリ型の構築でも大変に役に立っている。

 今回のは,表題の通り自鯖のお世話の関係になる。自鯖については,Apacheやメールサーバの勉強をしたいと思ってローカルで建てていたもの(これは仕事先のサイトの管理をやっていたので,仕事場とほぼ同じ環境を作って,チェックに使うために構築したのが発端。)を,DDNSで公開するところから始めて,独自ドメインを取り(これが2007年),その上でMovableTypeを利用したブログを書くようになった。当初,目的がサーバ自体の勉強であったため,ブログを書ける環境は作ったものの記事を書くことにはあまり興味がなかった。サイトのコンテンツを書くことについては,仕事関係の分だけでお腹いっぱいだったせいもある。

 ひょんなこと(「WordPress インストール。」参照)から,無料レンタルサーバ上にWordPress2.9.2でブログを書き始めたが,このレンタルサーバの接続があまりにも不安定なのに業を煮やし,このブログも自鯖上に移してしまった(「ブログを引っ越す。」参照。)ので,自鯖上にMovablTypeとWordPressと手書きのコンテンツが同居することになった。サーバ管理の勉強がしたくて始めたとはいうものの,昨今のようにセキュリティ・アップデートが引き続くとWAMP系の,しかし,パッケージではなく別々に構築したサーバソフトウェアの世話だけでも面倒なのに,両ブログCMSの世話が結構大変になってきてうんざりしていた。

 そこで,一大事業になるのは目に見えていたが,サイトのコンテンツの管理をWordPressに一本化しようと思い立った。一本化の骨をどのCMSにするかということは前もって考えてみた。
 Xoopsをインストールしてみたことや,近頃のMovableTypeの使い心地や,この間,XREA上のWordPress3.2.1でのサブドメイン型のマルチサイトを構築したときのことから考えると,いろいろ問題はあるもののWordPressがいいかなと思ったわけだ。今の勢いを考えると,WordPressのマルチサイトの使いやすさが上がってくるのもそう時間はかからない気がする。いちいち動的にページを表示するのでサーバのその都度の負担は若干大きいかもしれないが,うちのサイト程度では,問題にもならないだろう。主なコンテンツは2つのブログだから使い慣れていない汎用CMSよりも使い慣れたのがいいだろうということもある。
 MovableTypeももともとオープンソースのMTOSを使っていたので,費用の点ではこちらも無料だが,Perl系のMovableTypeとPHP系のWordPressでは,素人には後者の方がアップデート管理がしやすい気がする。PHPは膏薬(?)のようにどこにでもくっつくので,そのせいだろうか。反面,セキュリティではあっちこっち危ないということがあるのだろう。

 (注) 半可通の書いていることなので,鵜呑みにしないようにお願いします。―笑

 で取りかかったのだが,「一大事業になるのは目に見えていた」という覚悟はしていたものの,大変です(号泣―爆)。

 何はともあれ,稼働中のサーバなのでどこかにテストサイトを作ろうと考えた。自鯖のWindowsXPでVirtualPCということも候補に入れたが,使っているPC上でやるのは性格からくるうっかりミスで,間違って何かを削除するのが怖い(実は,実際にやらかして青ざめ,そっからやりなおしたのっス。―恥)。で,この間使ったXREA上で未公開のままテストサイトを構築することにした。

 まぁ,2ブログの引っ越しまでは,あんまり問題もなくうまくいったんだ。大体29日には終わっていた。
 今,手を焼いてるのは,旧手書き部分用のWordPressテーマのカスタマイズとWordPressの投稿画面を使ってBBSを作ること。これも,ほぼ出来たんだけど,cssに手こずっている。cssはねぇ,むかーし,やったことはあるんだけど,どうもそのころから苦手で。こう書けばこうなるはずと思って,書いたstyle.cssをアップしてみると意図したようになっていない。これの繰り返し。その過程で,IEについて7以下は見捨てることにした。7については,全く環境がないのでテストができないし,6についてはあまりにもやんちゃなのでギブアップ。その昔cssをやったころは,IE6だけを念頭に置いておけば,ほぼ無問題だったんだけど,今日日は,IE8とIE9を蚊帳の外に置くわけにいかないし,IE6とこの2つは全くと言っていいほど挙動が違う。もちろん,IE6のほうが,仕様に準拠していないのだ。
 他の人気ブラウザについては,当初から最新版しか念頭にない(爆)。これは,IEを使わずに他のモダンブラウザを使っている方たちは,だいたい最新版にアップして使っているのが普通だろうという希望的観測がもとになっている。

 2ブログの引っ越しくらいまでは,メモを取っていたんだけど,そっから先はグズグズになって何をやったかよくわからん。後で一番必要なところなのに(泣^2)。そういうわけで,引っ越しくらいまで,報告しておきます。XREA+での話です。しかし,すごく長くなっているので残りは,次記事にします。

カテゴリー
WordPress

ネットワークの作成-#5。(accident)

 夕べ遅く,XREAのWordPressネットワークにアクセスしようとしたらできなかった。DNS設定ができていない旨のメッセージが出る。
 管理ページにログインしてみたら,ドメインウェブのdefault.example.comが消え失せていた。また,VALUE-DOMAINの方で見てみると,DNS設定で手動設定していたWordPress関係のサブドメインが,これも消え失せていた。よく読んでみたら,無料サーバでは,サブドメインは10個までと書いてある。これを間違えて20個していたのだが,このせいだろうか。他に原因があるとしたら,なんだろうか。

 とにかく,再設定してみた。サーバにアップされているファイル自体には,何も変わりはないようだ。

 DNS設定について,再度,www,mirror,www1を設定。ドメインウェブについては,default.example.comを復活させるのはやめて,現在使用中の先の3つについて設定し,NoDirで保存した。これで,問題なくアクセスができるように復旧した。このままで,また,しばらく様子を見てみようと思う。

カテゴリー
WordPress

ネットワークの作成-#3。

投稿アップデート情報  追記(2012/7/16)

 17日(日)の午前0時過ぎに,弄り回していた「WordPressのネットワークの作成」関係のDNS・ドメイン関連の設定が終わって,眠りについた。午前7時ごろに起床して,いつも通り,wwwcを起動して,TODOS(記事No.37~)やら,juneさんとこ(記事[4266])やら,電右衛門さんのとこ(記事No.104)を見に行ったら,一大事(単に私のドジ設定です)が起きていた。その経緯については,「ネットワークの作成。」に追記したが,皆様,まことにお騒がせしました。平にご容赦!!

 で,その手当てが終わってから,りりさんにアカウントを送って使い勝手を見るのに付き合ってもらった。

 このブログで使っているのもWordPress3.2で,インストールしたのは同じwordpress-3.2-ja.zipなんだが,「ネットワークの作成」にすると使い勝手が全然違うね。まぁ,複数の人が使う形だから,自分が日ごろ使わない使い方をするわけで,人数が増えただけいろいろトラブルが出るのは当たり前かもしれない。今回はたった二人なんだけど(笑),それでも結構いろいろある。さて,番号を付けて書いていこうかナ。

  1. 固定ページをトップにすると,HOMEとその固定ページとダブルになってしまう件。
    これ,言われてから自分でやったら,二重にならない。あれっと思ったら,使っているテーマによって違っていた。そのとき,私が使っていたのは,現在のデフォルトテーマ「Twenty Eleven 1.2」,りりさんが使っていたのは,「AtahualpaのVersion 3.6.7」。
    まぁ,これは格好悪いけど,ブログの利用ができないわけではない。しかし,だんだん「Twenty Eleven 1.2」の仕様とそろっていくんだろうか。本体の変化が速すぎて周りがついていけてないんじゃないだろうか。
  2. ビジュアルエディターが使えなかった件。
    どうやら,XREAのサーバがgzの解凍をサポートしてなかった模様。XREAに確認はとっていない。WordPressのバージョンは違うが「Windows サーバーでビジュアルエディタが使えない (http://digitalbox.jp/happy-go-lucky-computing/wordpress/unused-wordpress-visual-editor-on-windows-server/)」の情報で解決。
    wp-tinymce.js.gz を展開して wp-tinymce.js を作成。これを wp-tinymce.js.gz のあったディレクトリにアップロード。wp-tinymce.phpを開いて,

    if ( isset($_GET['c']) && 1 == $_GET['c'] && isset($_SERVER['HTTP_ACCEPT_ENCODING'])
    	&& false !== stripos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') && ( $file = get_file($basepath . '/wp-tinymce.js.gz') ) ) {
    	header('Content-Encoding: gzip');
    	echo $file;
    } else {
    	echo get_file($basepath . '/tiny_mce.js');
    }
    exit;
    

    の部分をコメントアウト(あるいは削除)し,以下の2行に書き換える。
            echo get_file($basepath . ‘/wp-tinymce.js’);
            exit;
    これはなんで wp-tinymce.js.gz を使っているんだろう。はじめっから wp-tinymce.js にしてたらなんか不都合でもあるのかな。

    追記(2012/7/16)
     上記のことについて,Xreaではwp-includes/js/tinymceの直下に,以下の内容の.htaccessを置くことで,同様の効果を得ることができる。
       <Files wp-tinymce.php>
       AddHandler application/x-httpd-php5cgi .php
       </Files>
     Xreaの場合は,こっちを使ったほうが簡単だし,バージョンアップのときも気にしなくてよい。

  3. メディアの表示ができない件。
    メディアのアップロードはできるが,サイトに表示できなかったので,真っ先にmod_rewriteを疑ったが,.htaccessの記述に詳しくないので,どう書き直せばいいか分からない。いろいろググっていたらこんなのがあった。
            # uploaded files
            RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

            RewriteEngine On
    の直下に移動する。しかし,まだうまくいかない。そこで,アップロードとなれば,PHPでホスト上にファイルを作る話になるから,セーフモードに引っかかっているのではと思い,.htaccessに次のディレクティブを追加してみた。
            <Files ms-files.php>
            AddHandler application/x-httpd-phpcgi .php
            </Files>
    ビンゴ!! うまく表示されるようになった。

 話は,まだまだ進行形なのだが,ちょっと長くなったので,このあたりで中休みということにしよう。

 ところで,りりさんが,「ネットワークの作成」という用語について,「わかりにくいんじゃないでしょうか」と言っておられた。実のところ,私も違和感があったのだが,インストール後,WordPress3.2 をこの形で使っているうちに,開発者たちがネットワークと名付けた意味も,分かってきた気がする。「ネットワークの作成」の一連の話が終わるころには,もう少ししっかりその辺を把握できるだろうから,そのころにもう一度この件に触れてみたいと思う。

追記(8/13):
 読み返していたら,「一度この件に触れてみたいと思う」なんて書いてある。大したことを把握したわけじゃないんだけど,宣言した手前,一応触れておく(苦笑)。
 開発者たちが,それまで別枠になっていたWordPressMUの機能をWordPress3.0で本体と一本化したときに,multi-userという名前を捨てて,ネットワークということにしたわけだが,彼らの頭の中には,Social Network Service (SNS) があったんじゃないかと思う。何の根拠もない私見だが,WordPressに複数のユーザを作って,ユーザ間の権限をいろいろ設定してみて,つくづくそう感じた。そして,そのネットワークには各自の独立したブログも書けるってわけだ。そして,SNSと違うのは,原則としてそのネットワークに参加していない人にも,ネットワーク内のブログが読めるってことだ。なかなか面白くなるコンセプトだと思う。

カテゴリー
WordPress

ネットワークの作成-#2。

 WordPressのネットワークインストールが終わったら,ログインしてネットワーク管理者になり,「設定」>>「ネットワーク設定」から初期設定言語をJapaneseにする。しかし,日本語版を使ったのになんでデフォルトで英語のままなんだろう。それから,テーマとプラグインをいくつかインストールしておかなくてはいけないようだ。これのインストールが,ネットワーク管理者しかできないらしい。

 さてここからしばらくは,シングルサイトの場合でも同様。

 何はともあれ,プラグインAkismetとWP Multibyte Patchを有効化。

 XREAに設置したWordpressの自動アップデートを有効にしたい場合は,PHPをCGI版で稼動させる必要があり,Wordpressの設置ディレクトリの.htaccessにAddHandler application/x-httpd-phpcgi .phpを記述すればよいということを書いたサイトがあったが,これだと,すべてのPHPをCGIで動かすことが可能になり,なんかいやだなと思っていたら,必要なファイルだけについての設定をするように書いたサイトがあって,「WordPress 自動アップデートを XREA や CORESERVER で使えるようにする (http://www.templatestyle.in/item/wordpress-auto-update-xrea-coreserver.html だったが,古い記事は消された模様)」を参考に,以下の<Files>ディレクティブをWordpressの設置ディレクトリの.htaccessに追加記入。

<Files upload.php>
AddHandler application/x-httpd-phpcgi .php
</Files>
<Files update.php>
AddHandler application/x-httpd-phpcgi .php
</Files>
<Files update-core.php>
AddHandler application/x-httpd-phpcgi .php
</Files>
<Files plugin-install.php>
AddHandler application/x-httpd-phpcgi .php
</Files>
<Files async-upload.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

 これで自動アップデートしようとしたら,接続情報が表示されて,「開始」をクリックしたら,「エラー: サーバー接続中にエラーが発生しました。設定を確認してください。」が表示されていたのが,よくなった。また,テーマおよびメディアのアップロードのために,ドキュメントルートにtmp,wp-contentの直下にuploadsを作って,パーミッションを707にしておく。忘れるところだった。wp-config.phpの /* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */ という行より上にdefine( ‘WP_TEMP_DIR’ , ‘/virtual/ID/public_html/tmp/’);
を追加しておくこと。

 ダッシュボードのJavaScriptがまともに動いてくれないなと思っていたら,XREAの自動挿入の広告のせいだった。はやわかりXREAの「自動挿入広告」のFAQのページを読んで,ダッシュボードには広告を挿入しなくても違反にはならないと判断し,wp-adminの直下にLayoutIgnoreURI * を記入した.htaccessをアップしたら解決した。

 あとは,使ってみること(笑)。協力ユーザを何カ所かお願いしてみたけど,いいお返事は来るだろうか。

カテゴリー
WordPress

ネットワークの作成。

 今日は,7/16(土)です。先日(7/13)書いた当記事を少し書き直します。実は,http://新サイトドメイン.ユーザアカウント.s***.xrea.com/ がうまくいかなかったので,XREAのサポートフォーラムで聞いてみたところshimixさんからレスがいただけました。やはり,xreaのURLで使えるのは「アカウント.s***.xrea.com」だけのようです。ということで,DNS設定とドメインウェブ設定を少し変えて,WordPress3.2をインストールし直しました。
 DNS設定については,「サブドメインの練習。」の図3の「top」を「*」に変更

 7/17(日),さらに白字で挿入。上の消し線の件だが,これのせいで,7/17に入ってすぐから,朝,設定を弄るまで,o6asn.comへのアクセスがおかしくなってしまった。やっぱりの感が無きにしも非ず。サブドメイン関係をいちいち書く設定に直して,無事本家が元に戻った。==>>りりさん,電右衛門さん,ご連絡ありがとうございました。
 ドメインウェブ設定については,「サブドメインの練習。」の図5のSub2にdefault.o6asan.comを追加し,NoDirで設定。このdefault.o6asan.comの設定は少し変則だけど,我が家の場合は自鯖上で元々のサイトが稼働中だから,こういうことになる。

 ネットワークの作成というのは,WordPressをマルチユーザで使うための設定で,元は別建てでWordPressMUというのがあったのだが,Ver.3.0からWordPressコアに統合された。前から,考えるところもあって,これを使ってみたいと思っていたが,何分普通のWordPessのインストールよりは面倒ですとオフィシャルサイトにも断っているから,現在活動中の自鯖上で試すのは不安があって,躊躇していたのだ。さて,XREA上でこれをやってみよう。

 ネットワークの作成はサブドメインを使うことにする。SEO的にああだこうだという話もあるが,今回,特別な意味はない。自鯖の構成がサブディレクトリだから,今度は,サブドメインでやっておこう,みたいな程度。
 このためには,サーバでワイルドカード設定になっていなくてはいけないらしいが,XREAはデフォルトでこれなので,問題なし。
 今回は違うが,独自ドメインでこれをやるなら,「a *.独自ドメイン」については,設定フィールドでしてやらなければいけない。これをやると現在の自鯖で困ったことになるので,当たり前だけどやらないよ(笑)。

 さて,WordPress3.2をインストールしよう。

  1. wordpress-3.2-ja.zipを解凍し,FTPクライアントですべてをドキュメントルート(専用ディレクトリを作ってはいけない!!!)にアップロード。
  2. ブラウザから,http://www.o6asan.com/http://o6asan.s***.xrea.com/にアクセス。
  3. 画面の指示に従って,WordPressの設定を行う。
  4. パーミッションを変えるのを忘れていたせいかセーフモードのせいか,「wp-config.php ファイルへの書き込みができません。」が出てしまった。
    ローカルに表示された内容をコピー&ペーストしたwp-config.phpを作る。ついでに,/* That’s all, stop editing! Happy blogging. */ よりも上に次の行を追加。
             define (‘WP_ALLOW_MULTISITE’, true);
    その後,このファイルをFTPクライアントでドキュメントルートにアップロード。
  5. ブラウザに戻って,「インストール実行」をクリック。終了したら,ログイン。
  6. 「管理パネル」>>「プラグイン」>>「インストール済みプラグイン」から全てのプラグインが無効化されているか確認。
  7. 「管理パネル」>>「ツール」>>「 ネットワークの設定」で「サブドメイン」を選びインストール。
  8. 画面の指示に従って次のことをする。
    • FTPクライアントでwp-contentの直下にブログ用のディレクトリを作り,パーミッションを707にする。
    • wp-config.php のバックアップをとったのち,wp-config.phpの /* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */ という行より上に表示されたコードを追加。ホスト側のwp-config.php を削除し,新しいwp-config.php をアップロード,パーミッション404。
      表示されたRewriteのコードを書き込んだhtaccess.txtをローカルに作り,ドキュメントルートにアップロード後,.htaccessに名前変更。パーミッション604。
    • ログイン
  9. 一応完了。

 忘れてたけど,readme.html,readme-ja.html,wp-config-sample.phpは削除しておこう。いらないファイルはホスト上には,置かないに越したことはないから。

カテゴリー
everyday life

サブドメインの練習。

投稿アップデート情報  追記(12/13)

図1

 私の独自ドメインはデジロック社のVALUE-DOMAINで取ったものである。まぁ,当初は何より安くがメインだったので,そうなった。今日も今日とて,「ドメイン有効期限のお知らせ」が来ていた。2007年からだから,4年たつわけだ。なんかもっと昔から自鯖はやっていたような気がするんだが,独自ドメインを取ってからはそんなものなんだろう。初めは,790円/年だったんだが,今は980円/年。ドメイン名を使っているだけだから,高いんだか,安いんだか。
 ところで,デジロック社にはXREAという無料レンタルサーバがある。現在,一般公募はしていないようだが,VALUE-DOMAINの独自ドメインを使っていれば,XREAの使用ができる。今まで一度も利用したことがないのだが,今回,ここでサブドメインの練習をしてみようと思い立った。

図2

 https://www.value-domain.com/ からログイン。
 無料サーバーアカウントを取得・作成する。(図1の(1))
 無料アカウント名を決めて,登録ボタンを押す(図2)。その後,メール(XREA.COM NEW SIGNUP)を確認。

図3

 ユーザのコントロールパネルに戻って,DNSレコード/URL転送の変更を選び(図1の(2)),ドメインの設定の変更を行う(図3)。この設定が有効になるまで,少し時間を要するので,注意。

 ユーザのコントロールパネルに戻って,サーバーアカウントの登録・管理・購入を選び(図1の(3)),サーバー設定(図4)をクリックして入室。入室できたら,https://www.value-domain.com/ のほうはログアウトする。【今後は,https://***.xrea.com/www.****.xrea.com/jp/admin.cgi から,ログインする。その場合は,メール(XREA.COM NEW SIGNUP)で送られてきた情報を使うこと。】
 左ペインからマイドメイン利用のドメインウェブを選びドメイン設定。

図4

 Mainにexample.comというように独自ドメインを設定すると,sub.example.comにhttp://sub.example.com/でもhttp://example.com/sub.example.com/でもアクセスできるそうだ。今回は,それは困るので,Mainはblankにし,Sub1にtop.o6asan.comを設定する。

 左ペインから,データベースを選び文字コードをUnicodeで,MySQLのデータベースを作成する。これは後でもいいんだが,ここでやっておこう。

図5

 FTPでアクセスし,top.example.comにファイルをアップロードする。パーミッションについて,一つだけ。アクセスカウンタ用のtxtファイルが,600で使えなかったので,606に。phpはモジュールで動いているはずなんだが,オナーが違う形になっているのかな。今のところ,結果オーライ。

 というわけで,top.o6asan.comに行くと例の瓢箪が見えます。

【注意】 ここを参考にサブドメインをやろうと思う方へ。
 ここでは,自鯖上のサイトは現行のまま,XRE上のサーバでサブドメインを試そうとしている。そのため,図3のようなDNS設定になっている。独自ドメインを一つのサーバ上で動かそうと思う方は,そのあたりちょっと注意が必要である。

追記(12/13):
 図3に追加書き込みをした。このあたりまだまだ勉強不足。