Studio Twain

スタジオとぅえいんは,テキストおよびヴィジュアルの両面からクリエイティヴなコンテンツを発信していきます

12

2010


      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

プロフィール

神海 螢 / コウミ ケイ

スタジオとぅえいん

なんちゃって主宰

神海 螢 / コウミ ケイ

リアルネームのもじりですが,ペンネーム“神海 螢”(またはシムーベ)です。“スタジオとぅえいん”という名もなきWebサイトを10年以上続けております。

プロフィールの詳細はこちら

お問い合わせやご意見・ご要望などは,info-st★studiotwain.jp までメールでお気軽にどうぞ。
※★はアットマークに置き換えてください。


ツール

検索(by Google)

カテゴリーリスト

2010年12月04日(土)

Xserve G5にWordPress 3を導入したときの自分用メモ [Mac鯖管理]

AppleのラックマウントサーバことXserveは来年1月で販売終了とのアナウンスが先日あったけど(参考),先日Intel CPUどころかPowerPC G5時代のXserveにCMS(コンテンツマネージメントシステム)のWordPress Ver.3を導入する機会があったので,セットアップ時のサーバ設定手順をメモっておきます。なお,OSはMac OS X Server 10.5を想定していますので。

※ここではWordPress本体の設定方法は説明しません。また,本ページの情報を参照される際はAt your own riskでお願いします〜。

1.サーバ管理(Server Admin.app) >> Web >> 設定 >> モジュール から「php5_module」をチェックする(/etc/apache2/httpd.conf から直接「LoadModule php5_module」のコメントアウトを外してもOK)

2. 同じくDBサーバ上の サーバ管理 >> MySQL から MySQLのルートパスワードを設定の上,MySQLサービス を有効化する。Webサーバと別サーバで動かす場合は,「ネットワーク接続を許可」をチェックしておく

3. /etc/php.ini.default を /etc/apache2/php.ini へコピーし,/etc/apache2/httpd.conf にインクルードする
※直接 /etc/php.ini を編集した場合,Apacheが環境設定を正しく読み込まないことがあるらしい

$ sudo cp /etc/php.ini.default /etc/apache2/php.ini
$ sudo vi /etc/apache2/php.ini

# 最終行に入力
PHPIniDir "/etc/apache2"

# ファイル保存

4. 今後,phpMyAdmin経由でSQLファイルのダンプをインポート/エクスポートする運用を想定し,アップロードサイズの上限値を変更しておく
※各パラメータは memory_limit => post_max_size => upload_max_filesize を満たすようにする

$ sudo vi etc/apache2/php.ini

# 以下変更例。この場合,128Mまでのファイルアップロードが可能になる
memory_limit = 512M
post_max_size = 256M
upload_max_filesize = 128M

# ファイル保存

5. WordPressからコメントフォームといったメール送信機能を使用する場合は,php.ini に SMPTサーバのURLを記述する

$ sudo vi etc/apache2/php.ini

[mail function]
SMTP = hoge.hoge
smtp_port = 25

# ファイル保存

6. WordPressの動作に必要な GD をインストールする(手順はこちらのページを参照)

7. G5(特にシングルCPU)だとWordPress上でページ編集等を行うと,PHPの負荷が無視できないほど大きくなるため,PHPアクセラレータ“APC”を合わせてインストールする。手順は次の通り

7-1. “APC”をダウンロードし,任意のパスに展開

$ cd APC-3.1.6/APC-3.1.6
$ phpize

7-2. 64bitアーキテクチャを指定(¥はバックスラッシュに読み替えてください)
$ MACOSX_DEPLOYMENT_TARGET=10.5 ¥
CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" ¥
CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" ¥
CXXFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" ¥
LDFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load" ¥
./configure

7-3. APCをコンパイルし,エラーが出なければインストール
$ make
$ make test
$ sudo make install

7-4. /etc/apache2/php.ini に環境設定を追記
# [597行目前後]
extension=apc.so

# [最終行]
[apc]
apc.enabled=1
apc.shm_segments=1
apc.optimization=0
apc.shm_size=128
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.enable_cli=1

# ファイル保存

7-5. Apache を再起動し,phpinfoで,APCが有効化されていることを確認
$ sudo apachectl restart

APCが有効化後は,ソースファイルに含まれる apc.php にアクセスすると,以下のようなキャッシュ情報が表示されるハズです

画像(318x320)・拡大画像(593x596)

8. phpMyAdmin などのMySQL管理ツールをDBサーバにインストールするか,Sequel Pro のようなDBクライアントソフトを使ってMySQL用のデータベースを定義する(手順は省略)

9. WordPress 本体をインストールする
※テスト用のサーバからDBを引き継ぐ場合は,いったんSQLのダンプを書き出し,URLを一括置換後に本番サーバへインポートする必要がある

10. WordPressプラグインやウィジェットなどを整備する
※参考までに今回使用したプラグインを列挙します

  • All in One SEO Pack:SEO支援ツール
  • Category Order:カテゴリを任意の順番に並び替え
  • Contact Form 7:問い合わせフォームを簡単に作るツール
  • Link Indication:外部リンクやメディアファイルのリンク部分にマークを追加
  • Maintenance Mode:サーバメンテナンス時のページを用意
  • qTranslate:多言語対応ページ作成ツール
  • Really Simple CAPTCHA:問い合わせフォームに簡易的な画像認証を追加
  • StatPress:アクセス解析
  • TinyMCE Advanced:ビジュアルエディタの機能強化
  • Wordpress Download Monitor:ダウンロードファイルのカウンタ
  • wp-cache:ページキャッシュの機能強化
  • WP-lightpop:画像のオーバーレイ表示を実現するLightboxのWordPress版
  • WP-Print:印刷用ページレイアウトを自動作成

11. 旧サイトからページ単位のリダイレクトを行う場合は,/etc/apache2 以下に httpd_alias.conf といったファイルを作成し,Apache mod_alias の記述方法に従って転送元と転送先を定義の上,/etc/apache2/0000_any_80_.conf 及び /etc/apache2/0001_any_443_.conf にインクルードする

# /etc/apache2/httpd_alias.conf での転送設定例

# /ja などでアクセスした場合は,日本語ページに誘導
RedirectMatch 301 ^/(JA|japanese|JAPANESE|jpn|JPN|jp|JP)(|/)$ "/?lang=ja"

# /en などでアクセスした場合は,英語ページに誘導
RedirectMatch 301 ^/(EN|english|ENGLISH|eng|ENG|us|US)(|/)$ "/?lang=en"
# /etc/apache2/*.conf へのインクルード
$ sudo vi /etc/apache2/0000_any_80_.conf

# <IfModule mod_alias.c>〜</IfModule>の後に追記
Include /etc/apache2/httpd_alias.conf

# ファイル保存

12. ページのリダイレクトは,mod_rewrite の方がより柔軟に行えるが,今回はプロトコルの変換でのみ使用した(例:https でアクセスした場合は,http に全転送)

# /etc/apache2/0001_any_443_.conf の<IfModule mod_rewrite.c>内に記述

$ sudo vi /etc/apache2/0001_any_443_.conf

RewriteEngine on
RewriteCond %{SERVER_PORT} 443$
RewriteRule (.*)?$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R]

# ファイル保存

14. Apache を再起動し,最終的な動作確認を行う

$ sudo apachectl restart

15. 必要に応じてMySQLの定期バックアップを行う(cronによる自動バックアップの設定例はこちらのサイトを参照)

トラブルメモ
運用前後に遭遇したトラブルの対処法について簡単にまとめます。


Q:Webサーバの httpd が暴走し,CPU使用率が100%近くなる

A:ページ編集後にWordPressのアプリケーションがインデックスのようなものを作成するらしい。Apacheのアクセスログをみると以下のような記録が延々と続いていた。しばらく(半日程度)放置していたら解消し,以後発生しなくなった

xxx.xxx.xxx.xxx - - [24/Nov/2010:22:35:32 +0900] "HEAD 
/wp-content/uploads/sample.jpg HTTP/1.0" 200 - "-"
"WordPress/3.0.1; http://hoge.hoge"

Q:WordPress プラグインの自動アップデートやインストールを管理画面から行おうとすると「ファイルをコピーできませんでした」「ディレクトリを作成できませんでした」といったエラーメッセージが表示され,正常に実行されない

A:以下の方法を試してみる

1. FTPサービスが利用できる場合は,こちらの情報を参考に,wp-config.php 内でFTPアカウントの情報を設定する

FTP_BASE:インストールした WordPress のベースフォルダへのフルパス
FTP_CONTENT_DIR:インストールした WordPress の wp-content フォルダへのフルパス
FTP_PLUGIN_DIR:インストールした WordPress の plugins フォルダへのフルパス

2. SSH 経由でアップデートを実行することできるようだが,事前にPHP側にモジュールをインストールし,設定しておく必要がある(参考)。公開鍵認証も可能だが,Apacheから参照可能なディレクトリに配置すること(セキュリティ的に問題ないかは不明)
FTP_PLUGIN_DIR:インストールした WordPress の plugins フォルダへのフルパス
FTP_PUBKEY:SSH 公開鍵へのフルパス
FTP_PRIKEY:SSH 秘密鍵へのフルパス
FTP_USER:FTP または SSH のユーザー名。同一の場合がほとんどだが、利用したい更新タイプのユーザーに一致させること
FTP_PASS:FTP_USER で入力したユーザーのパスワード。SSH 公開鍵での認証を使っている場合は省略可能
FTP_HOST:SSH/FTP サーバーのホスト名:ポート番号の組み合わせ。FTP ポートは通常21で、SSH ポートは22
FTP_SSL:SLL 接続を使う

3. FTP も SSH も使用しない or できない場合は,wp-config.php 内に以下の情報を書き込み,WordPress ディレクトリ以下の所有者を“_www”に変更する(参考
※グループは admin のままでよいが,chmod g+w で書き込み権限を与えておかないと,コンソール上でファイルを直接編集でなくなる→管理画面からプラグインをインストール/アップデートすると,wordpress/wp-content/plugins フォルダ内のグループアクセス権から書込権限が取れてしまうが目をつぶる
define(‘FS_METHOD’,'direct’);

Q:“Contact Form 7”などのフォームメールプラグインを使ってメールを送信してもメールが届かない

A: /etc/apache2/php.ini の SMTP欄をlocalhost から SMTPサーバのアドレスに書き換える(本文手順5.参照)

参考

Posted by 神海 螢 / コウミ ケイ at 2010年12月04日(土) 21時01分   コメント ( 0 )

ページのトップへ ページのトップへ

PHOTO [ もっと見る... ]

できるだけ山陰本線回りで帰ってみる旅

できるだけ山陰本線回りで帰ってみる旅

嵯峨野観光鉄道のトロッコ列車に乗ってきた

嵯峨野観光鉄道のトロッコ列車に乗ってきた

さっそくキハ189系にゅーはまかぜ目撃

さっそくキハ189系にゅーはまかぜ目撃

リンク集

powered by a-blog
Studio Twain
Copyright (C) Studio Twain