XAMPP環境でWordPressの自動アップデートを可能にする

約1年前にリプレイスしたファイルサーバ(Ubuntu 8.04 LTS Server Edition)には、XAMPP for Linuxによるウェブサーバ環境も構築してある。仕事で関わるウェブ案件にはたいていWordPressが絡んでいるし、他のスタッフと分担して構築作業を進めていくので、ファイルサーバとウェブサーバを兼用しておく方がなにかと便利なのだ。

ところでかねて困っていたのが、XAMPP上で動かすWordPressが自動アップデートに対応してくれない、ということだった。コアファイルやプラグインのアップデートをしようにも、そのたびにFTPのアカウント情報を尋ねられる始末でいっこうに進まない。

とはいえその状態で放っておくのも精神衛生上よくないわけで、一念発起してXAMPP環境でも自動アップデートができるよう環境設定をしたのである。

ググってまず出てきたのが、wp-config.php に

  • FTP_BASE
  • FTP_CONTENT_DIR
  • FTP_PLUGIN_DIR

を追記せよという指令であった。今まで、リモート環境で自動アップデートするときにはまったく気にしたことのない定数群だったので、なんだ?と思ったのだが、Codexによるとシンボリックリンクをはっている場合に、問題が起きる可能性があるとのこと。

ウチの環境がまさしくそうだ。

XAMPP for Linuxをインストールしているのが /opt/lampp ディレクトリ,WordPressをインストールしているのが /home/USER/dev ディレクトリでしかもXAMPPとは別ディスク。/opt/lampp/htdocs 内から /home/USER/dev 内に向けてシンボリックリンクをはって運用しているのである。

ということで、定数群の設定は終わった。しかし、課題は解決しなかった。

ここからが実に長かった。後になってみれば「確かにそうだわ」というつまずきだったのだが、ほうぼうググった挙句ようやくたどりついた結論が……

Apacheの実行ユーザに注意

ということであった。

ちなみに、当方の /opt/lampp/etc/httpd.conf を見るとこうなっている。

#User nobody
#Group nogroup
User foo
Group bar

デフォルトの nobody, nogroup をコメントアウトし foo, bar に変更(実際のファイルには実在のユーザ名・グループ名が書かれている)、ユーザ foo でXAMMP上のApacheを実行させている。

ここがつまずきの原因だった。インストールしたWordPressディレクトリの所有者が foo ではなかったため、自動アップデート時に使われる wp-content ディレクトリに書き込みできず、いつまでも「ファイルをコピーできませんでした」とのエラーをはき続けたのである。

ということで、まとめ(実はここだけ読めばよかったのですスミマセン)。

Apacheの実行ユーザとWordPressインストールディレクトリの所有者は揃えよう。


wp-config.php の編集 – WordPress Codex 日本語版

http://wpdocs.sourceforge.jp/wp-config.php_%E3%81%AE%E7%B7%A8%E9%9B%86

Related posts:

  1. 『OpenPNE』を試用する
  2. 『さくらのレンタルサーバ』にuuenviewをインストール
  3. 『Amazon Cross Book Check』に近くの図書館のエントリを追加した
  4. PHPの opendir 関数は「PHPの実行ファイルを基準にした相対パス」で
  5. Ubuntu上でWindowsを動かす!……って、もちろん『VMware Player』でね♡

0 Responses to “XAMPP環境でWordPressの自動アップデートを可能にする”


  • No Comments

Leave a Reply