XREA+(PLUS)/CORESERVERでWordPressのWPTouchプラグインを使用した時に出るエラー(ワーニング)メッセージの回避方法をメモしておきます。
WPTouchをインストール(wp-content/pluginsにput)して有効化後に、wordpressのコントロールパネルからWPTouchの設定画面を呼び出し、Core SettingsのSave Changeをしたとき、画面上部に下記ワーニングメッセージが出力される場合があります。中身を読んでみると、ディレクトリにアクセスできなくて怒られていることがわかります。
Warning: fopen() [function.fopen]: Unable to access /virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-131850.txt in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen(/virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-131850.txt) [function.fopen]: failed to open stream: No such file or directory in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen() [function.fopen]: Unable to access /virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-131850.txt in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen(/virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-131850.txt) [function.fopen]: failed to open stream: No such file or directory in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51
まずは、wp-contentsの権限を確認してください。777等で設定されている、かつ、wp-content/wptouch-dataが作成されている場合は問題ありません。当該ディレクトリ内に複数のディレクトリが作成されていることも併せて確認します。
一方、wp-contentが755で設定されている場合は、wp-content/wptouch-dataを手で作成して、777を与えてください。
ここで、再度wordpressのコントロールパネルからWPTouchの設定画面を呼び出します。すると、先ほど手で作成したwp-content/wptouch-data配下に複数のディレクトリが作成されます。ところが、これらのディレクトリは、所有者がapacheになっています。これは、XREA系列サーバでは回避しようがないようです。
※ モジュール版PHPから作成されたファイルの所有者は「apache」になります。これらのファイルの所有者を「*****」に、パーミッションを「707」に変更します。(XREAコントロールパネルより引用)
その場合は、下記ワーニングメッセージが出力されます。スクリプトと所有者の違うディレクトリが読めないと言っています。(適当)
Warning: fopen() [function.fopen]: SAFE MODE Restriction in effect. The script whose uid is 10852 is not allowed to access /virtual/*****/public_html/wp-content/wptouch-data/backups owned by uid 1000 in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen(/virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-141529.txt) [function.fopen]: failed to open stream: No such file or directory in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen() [function.fopen]: SAFE MODE Restriction in effect. The script whose uid is 10852 is not allowed to access /virtual/*****/public_html/wp-content/wptouch-data/backups owned by uid 1000 in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51 Warning: fopen(/virtual/*****/public_html/wp-content/wptouch-data/backups/wptouch-backup-20131210-141529.txt) [function.fopen]: failed to open stream: No such file or directory in /virtual/*****/public_html/wp-content/plugins/wptouch/core/admin-backup-restore.php on line 51
この事象はXREAのコントロールパネルより、フォルダの所有者を変更することで解決することができます。コントロールパネルから「ツール」を選択し「ファイル所有者の変更」します。
これにて一旦落着。