DreamHostでWordPressを使うときの注意点

・WordPressの管理画面内→パーマリンク設定を変更して使う場合
WordPressがmod_rewriteを使う為に.htaccessを編集した場合
アクセス解析ページへアクセスできなくなるケースが発生します
その場合、以下の記述を.htaccessの「# BEGIN WordPress」と記載されている部分より前に入れます

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/(stats|failed_auth\.html).*$ [NC]
RewriteRule . - [L]
</IfModule>
この記述が先に処理されればhttp://example.com/stats/へアクセスしてもWordPress処理より前に内部転送される
これはパーマリンク設定以外でもWP Super CacheやW3 Total Cacheのようなキャッシュ系プラグインの使用時も同様

Making stats accessible with htaccess - DreamHost http://wiki.dreamhost.com/Making_stats_accessible_with_htaccess

・とりあえず重い
単純にインストールしただけの場合結構重い
管理画面内の移動でもちょくちょく500エラーになるときもある
htmlや単純なPHP/CGIなら全く問題ないので海外で経路がとかじゃなく
単純にサーバの処理能力が問題かなと思う(細かく検証したわけじゃない)
特に重いなと思うときMySQLサーバで時間かかってる場合が多い
WordPressの引っ越しとかでMySQLにそれなりのクエリを一気に処理させる場合は
WEB上(WordPress管理画面やphpmyadmin)でせずSSH上で処理した方が確実
WordPressはPHP+MySQLとあまりよくない条件なので快適に表示させたい場合は
キャッシュ系プラグインを使用した方がいいと思う
キャッシュされたページをmod_rewriteで処理できるようにしておけば大抵の場合気にならなくなるはず
それでも不満ならhtml生成系のMovable Typeなどを選択することも必要かも

DreamHostの初期設定

2011/06時点でのメモです

・SSH接続許可
「DreamHost Web Panel > Users : Manage Users」ページ内、許可するユーザのActions欄からEditを選択
「User Account Type:」を「Shell account - allows SFTP/FTP plus ssh access.」に変更しSSH接続を有効にする

・PHPの動作方式をPHP5.3 FastCGIにする
「DreamHost Web Panel > Domain : Manage Domains」ページ内、変更するドメインの「Web Hosting」からEditを選択
「Web Options」の「PHP mode:」を「PHP 5.3 FastCGI」にする

・php.iniをいじれるようにする
SSH接続し.bashrc等があるホームディレクトリ位置に「.php」ディレクトリを作りその中に「5.3」ディレクトリを作る
mkdir ~/.php
mkdir ~/.php/5.3
その中にphp.iniを配置する 元になるファイル位置は「/etc/php53/php.ini」
cp /etc/php53/php.ini ~/.php/5.3/php.ini

・php内のタイムゾーンを変更する
php.ini内に「date.timezone = "America/Los_Angeles"」となってる箇所があると思うので
date.timezone = "Asia/Tokyo"に変更する
date.timezone項目がないなら追記すればいいと思う
上書き後phpinfoのdate->Default timezoneの項目で設定が反映してるかチェック

その他
そのままだとIndexesが有効になってるので.htaccessで「Options -Indexes」を設定しておく

.htaccessで「DefaultLanguage ja-JP」、UTF-8のページが多い場合「AddDefaultCharset UTF-8」を設定

perlのパスは#!/usr/local/bin/perlでも#!/usr/bin/perlでもいい あとSuEXEC動作なのでパーミッションは700で動作

PHPの設定変更が反映しない場合はSSHで「killall php53.cgi」を実行してみるといい

転送量の確認は「DreamHost Web Panel > Status : Bandwidth Usage」

サポートを受けたい場合は管理画面の左上付近にある「CHAT LIVE」ボタンを使う
チャット内での名前(登録した名前と違っても多分問題ない)と質問のジャンルを選択すれば会話画面に入り少し待てばサポートの人がしゃべりかけてくれる
当然中身は英語なので翻訳サイトを用意して聞きたいことをある程度英訳しとけば楽かも

タイムゾーンを自前で調整する場合サーバの時間はアメリカ/ロスなので標準時-8時間
日本が標準時+9時間なので+17時間で調整可能
注意点としてはサマータイムでサマータイム期間中(3月の第2日曜日~11月の第1日曜日)は
+16時間に修正する必要がある
これは主にlogsフォルダ内の生ログを自前で解析する場合に必要になる処理である