前回11月19日に、「ドメインキングのディスク容量2倍は嬉しいけれど」という記事のなかで、ドメインキングにBaserCMSをインストールしようとして500 internal server errorが出たと書いのだが、その後、サポートにメールしてみると、mod_rewriteは使えるとの回答。さらに、BaserCMSからドメインキングでの動作を確認したという発表があった。
というわけで、さっそく記事の一部は修正したものの、なかなか時間が取れなくて、自分では確認できないままの状態が続いていた。今夜何とか挑戦できたので、以下簡単なレポート。
インストールの前の下準備
BaserCMSの場合、MySQL、PosgresSQL、SQLite3のデータベースに対応しているが、データベースなしでも動作する。もちろん、データベースなしではパフォーマンスは落ちてしまうが、データベースアカウントを使いきっている環境では実にありがたい。
なお、SQLite3以外のデータベースを利用する場合は、事前にアカウントの設定が必要。また、PHPのセーフモードをオフにしておかなければならない。ドメインキングのコントロールパネルにログインして、ドメイン名=>設定のサービス欄「PHP の ‘safe_mode’ を有効(On)にする」のチェックを外せばセーフモードを解除できる。
エラーメッセージ
BaserCMSの公式サイトから最新版をダウンロードしたら、展開してすべてのファイルをFTPクライアントによってhttpdocsにアップロードする。あとは、ブラウザからhttp://ドメイン名にアクセスすれば、インストールが始まる。ここまでは前回と同じだ。
ただ、前回はここで、500 internal server errorが出て先に進めなかったのだが、今回は、画面トップに次のようなエラーが出る。
Warning: mkdir() [function.mkdir]: Permission denied in /var/www/vhosts/hogehoge.jp/httpdocs/cake/libs/folder.php on line 465
Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/error.log) is not within the allowed path(s): (/var/www/vhosts/hogehoge.jp/httpdocs:/tmp) in /var/www/vhosts/hogehoge.jp/httpdocs/cake/libs/file.php on line 387
Warning: is_writable() [function.is-writable]: open_basedir restriction in effect. File(/error.log) is not within the allowed path(s): (/var/www/vhosts/hogehoge.jp/httpdocs:/tmp) in /var/www/vhosts/hogehoge.jp/httpdocs/cake/libs/file.php on line 420
どうやらパーミッション関連のエラーだとわかるが、今回は「次のステップ」ボタンも現れているので、構わず次に進むと、丁寧なエラー対策が表示される。
パーミッションの変更
今回修正しなければならなかった箇所は次のとおり。
# /app/config フォルダの書き込み権限(707 OR 777)
書き込み不可
/app/config フォルダに書き込み権限が必要です
#
/app/config/core.php ファイルの書き込み権限(606 OR 666)
書き込み不可
/app/config/core.php ファイルに書き込み権限が必要です
#
/app/tmp フォルダの書き込み権限(707 OR 777)
書き込み不可
/app/tmp フォルダに書き込み権限が必要です。
#
/app/webroot/themed フォルダの書き込み権限
書き込み不可
/app/webroot/themed フォルダに書き込み権限が必要です
ファイルデータベース
/app/db/ の書き込み権限(707 OR 777)
FTPクライアントで(例えばFileZillaならフォルダを右クリックしてファイルパーミッションを選択する)指示どおりにパーミッションを変更して「再チェック」ボタンを押すと、エラーメッセージは綺麗に消える。
データベース設定から最終ステップへ
すべての項目にチェックマークが付いていることを確認したら「次のステップへ」ボタンを押す。次のステップは、データベースの設定ページになっている。
予め作っておいたデータベースアカウントのデータベース名とユーザー名を入れる。この場合は、データベース名がhogeでユーザー名はubiqだ。
入力が終わったら、「接続テスト」ボタンを押し、「データベースへの接続に成功しました」というメッセージが出たら、「次のステップ」ボタンを押す。
これが最後のステップで、管理者用の電子メールアドレスと管理者名、パスワードを入力すれば完了となる。
WordPressとBaserCMSの組み合わせ
BaserCMSの管理画面に入ったときに受ける第一印象は、質実剛健だろうか。機能てんこ盛りのWordPressの管理画面とは対照的に必要最小限のものしかない。
確かにWordPressに比べれば、まだまだ発展途上の段階にあるといえるBaserCMSだが、逆にWordPressにはないシンプルさがあって、初心者にも分かりやすい。
個人の情報発信ツールから出発して、企業サイトも作成できる汎用CMSへと進化しつつあるWordPressと、最初から小規模なコーポレートサイトを構築できるようにと設計されたBaserCMSでは、発想そのものが真逆だが、案外、お互いを補完し合う間柄に発展する可能性もありそうだ。
そうなってくると、ドメイン管理料 + レンタルサーバーで100円という激安キャンペーン実施中のドメインキングのコストパフォーマンスは、さらなる高みに向かう可能性大ということになる。
なお、上記のインストール作業は、Ubuntu 10.10上のFirefoxで行った。BaserCMS1.6.7.1からはパーミッションエラー対策がほどこされているとのことなので、別の環境(WindowsやMac上)ではエラーが起こらないかもしれない。