すたらブログ

文系Webプログラマの備忘録

【失敗・断念】WordPress+SQLite3+Herokuの設定

【注意 2013年11月4日】

投稿した記事がSQLiteに保存されず、解決策が見つかりません。
この方法は諦めました。
末尾の章をご覧ください。

目次

  1. 環境
  2. WordPressでSQLiteを使うための設定
  3. .htaccessでアクセス制限をかける
  4. Herokuにデプロイする
  5. 【未解決】インストール失敗?

環境


WordPressSQLiteを使うための設定

上記のページに従って進めればOKです。
Herokuのドキュメントルートのパスは/app/www/のようなので、SQLiteファイルまでのパスの設定は下記のようになりました。

<?php
define('DB_DIR', '/app/www/db/');
define('DB_FILE', 'wordpress.sqlite3');

SQLiteファイルにはあらかじめ仮のテーブルをひとつ作成し、空の状態ではなくしています。


.htaccessでアクセス制限をかける

後の工程でWordPressのインストールが終わると、

HerokuのWebサーバはアパッチじゃないから.htaccessでアクセス制限できないよ!
データベースのような大切なファイルを置かないでね。

…というような警告が表示されます。
が、試してみたところでは問題なくアクセス制限できるようです。

SQLiteファイルを収めたフォルダへのアクセス制限

SQLiteを使う以上、当然やっておかなければならないことです。

; /db/.htaccess

DENY FROM ALL

サイト全体へのBasic認証

テーマの改造が終わるまでは非公開にしておきたいので、Basic認証を設けます。
下記のページにすごく助けられました m( )m

Herokuでは下記のようにすればいいでしょう。

; /.htaccess

AuthUserFile /app/www/.htpasswd
AuthGroupFile /dev/null
AuthName "Secret Area"
AuthType Basic

require valid-user

<Files ~ "^.(htpasswd|htaccess)$">
    deny from all
</Files>
; /.htpasswd

(ユーザ名):(暗号化されたパスワード)

Herokuにデプロイする

おなじみの作業です。

$ cd /path/to/your/wordpress
$ git init
$ git add -A
$ git commit -m 'first init'

# a. 端末で新規にアプリを作成する場合
$ heroku create -s cedar -b git://github.com/heroku/heroku-buildpack-php.git sutara-wp

# b. すでに作成しているアプリをリモートとして追加する場合
$ git remote add heroku git@heroku.com:sutara-wp.git

$ git push heroku master

後は通常のWordPressのインストールをするだけです。


【未解決】インストール失敗?

昨夜インストールを終えて今朝Heroku上のWordPressを開いたところ、インストールの情報がすべてが消えて初期画面が表示されていました ( ゚д゚)ポカーン
SQLiteが原因なのか、Herokuでフリーズされたことが原因なのか、よく分かりませんがとりあえず様子見です (-_-;)