雨ときどき晴れ

最近は C# や Blazor やってます。Raspberry Pi で Node-RED も活用できるようになりました。

ロリポップにMySQLを使わないWordPressをインストールしてみた。

ナウでヤングなレンタルサーバーロリポップ
ロリポップには月額105円から使えるコロリプランと月額263円〜のロリポプランがあります。

今回はテスト用にロリポプランに契約、ブログ用にWordPressをインストールしようと考えました。
しかし、ロリポプランではデータベース(MySQL)は1つしか使えません。
そうすると、複数WordPressをインストールしたり、他のデータベースを利用するソフトが
インストールできなくなってしまいます。


ということで、この問題を回避するために
MySQLを使わないWordPressのインストールをやってみました。
方法としては、MySQLの代わりにSQLiteを使います。

設定情報

WordPressをダウンロード

まず、公式サイトからWordPressをダウンロードします。
WordPress › 日本語
今回は、「WordPress 3.0.1」をダウンロードしました。

WordPressをサーバーにコピー

ダウンロードしたZIPファイルを解凍したものをサーバーにコピーします。

  • コピー先:/blog/
  • コピーするフォルダ:wordpress


なお、ロリポップへのFTPSによるコピーでは、

  • ソフト:WinSCP
    • ファイル数:775、サイズ:11.0MB
    • コピー時間:5分14秒(切断6回)

という状況でした。
何回か切断するみたいなので気長にコピーしてみましょう。
WinSCPには再接続を自動で行う機能があるため、基本的には何もしなくても無事コピーできました。

SQLiteを使うための設定

「wp-contents」フォルダ内に「database」フォルダを作成します。
「database」のパーミッションは「777」にしておきます。

  • 作成する場所:/blog/wordpress/wp-contents/database


「wp-config-sample.php」をコピーして、「wp-config.php」を作成します。

また、作成した「wp-config.php」に下記の設定を追加しておきます。

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define('DB_COLLATE', '');

/** SQLite用に追加 */
define('DB_TYPE', 'sqlite');

SQLiteで動作させるためのプラグインをインストール

WordPressSQLiteで動作させるために必要な
「PDO (SQLite) For Wordpress」というプラグインを下記のサイトからダウンロードします。
WordPress › PDO (SQLite) For WordPress « WordPress Plugins
今回は、「PDO (SQLite) For Wordpress Version 2.7.0」をダウンロードしました。


ダウンロードしたZIPファイルを解凍し、サーバーにコピーします。

  • コピー先:/blog/wordpress/wp-contents/
  • コピーするファイル:dp.php
  • コピーするフォルダ:pdo

WordPressをインストールする

必要なファイルが揃ったため、WordPressのトップページにアクセスしてみます。


しかし、ここでエラー発生。

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit in safe mode in /home/users/○○○/blog/wordpress/wp-content/pdo/PDOEngine.php on line 63

Warning: Cannot modify header information - headers already sent by (output started at /home/users/○○○/blog/wordpress/wp-content/pdo/PDOEngine.php:63) in /home/users/○○○/blog/wordpress/wp-includes/pluggable.php on line 890

エラー内容は「PHPがセーフモードで動作しているからダメ」と言っているようです。


対応としては、
ロリポップ!ユーザー専用ページから「WEBツール」→「php.iniの設定」ページにて、
「safe_mode」の設定を「On」→「Off」に変更してみました。

設定変更後、再度トップページにアクセスしたところ、インストール画面が表示されました。

この画面で必要項目を入力後、次のページに移動するとインストールが完了します。


そして、ログインページにアクセスしてみます。
ここでもエラー発生。

Fatal error: Maximum execution time of 30 seconds exceeded in /home/users/○○○/blog/wordpress/wp-content/pdo/PDOEngine.php on line 451 

なんだか、タイムアウトしたらしい。
とりあえず、再度アクセスしてみるとログインページが表示されました。

ということで、無事インストールが完了しました。
WordPressってインストール簡単でステキですよね。