先日のとおり、wordpressをVMWare上のUbuntuで動かしてみた。
割と普通に動作してるな、と思いきや、プラグインの自動アップグレードができない。具体的に言うと、
- FTPの接続情報を求められる
これは wp-config.php に以下の内容を追記することで解決した。(接続情報の入力無しでプラグインの自動アップグレードが始まるようになった)
define('FS_METHOD','direct');
- 一時ディレクトリが作れない、と怒られる
これは wp-content ディレクトリに upgrade ディレクトリを作成したら解決した。
- 古いプラグインが削除できない、と怒られる
一番最後の、古いプラグインが削除できないやつ。これは困った。
ということで、対処法を色々と探ってみたら、.htaccess をいじってCGIモードで動かすといいんだとか。
<files setup-config.php> AddHandler application/x-httpd-phpcgi .php </files> <files async-upload.php> AddHandler application/x-httpd-phpcgi .php </files> <files update-core.php> AddHandler application/x-httpd-phpcgi .php </files> <files admin.php> AddHandler application/x-httpd-phpcgi .php </files> <files update.php> AddHandler application/x-httpd-phpcgi .php </files> <files edit.php> AddHandler application/x-httpd-phpcgi .php </files>
という内容を wordpress/wp-admin/.htaccess に記述してみたが駄目。
で、色々と調べてみて見つけたのがこちらのサイト。
Wordpressの自動アップデートで接続できないときの対応 | Yusuke Yamamoto’s Web site
どうやら、apacheのユーザとwordpressのユーザが異なることが原因ぽい。
で、wordpressディレクトリを chown -R で www-dataユーザに変更してみたら、プラグインの自動アップグレードがでけた。一応、プラグインの自動アップグレードができたら再度 chown -R でwordpressディレクトリを元のユーザに戻しておく。
ちょう応急処置。
もしかすると、さっきの .htaccess を wordpress/wp-content ディレクトリに置いちゃうと解決するのかもしれない。試してないけど。まぁ、次の自動アップグレードの機会にやってみよっと。
■追記
編集済みの .htaccess を wordpress/wp-content ディレクトリに置いてみたけど、アップデートできなかた。うーむ。さくらとかはどうやってるんだろ。