XREA で WordPress ファイルアップロード機能を利用する

私は XREA のサーバースペースを使っています。
XREA では PHP は SAFE MODE 環境で動くようになっています。

このため、WordPress のファイルアップロード機能を使う際にセーフモードの制限を受けてしまっていました。

例えば、WordPress でサーバーに新しくディレクトリを作成した場合、ディレクトリの権限が Apache になってしまうのもセーフモードの制限によるものです。ディレクトリの権限が Apache になってしまうと、WordPress からファイルをアップロードすることができなくなります。
つまり PHP からディレクトリを作成すると、ファイルのアップロードが出来ないディレクトリになってしまう、ということです。これでは不便です。

ファイルアップロード機能が使いたいのならば、回避策として WordPress Japan の wiki に載っている (ファイルアップロード機能の利用 – WordPress Japan)を参考に、「PHP を CGI として動かしてあげる」もしくは「フォルダだけは手動で作っておく」という方法を使えば良かったのですが、ふと XREA のサイトを見ていたら「XREA SUPPORT BOARD – PHPをCGIとして動かす方法について」という記事が。

これは!?と思って読んでみたところ…

パーミッション:644などCGIとして必須のオーナー実行権限がなくても実行できますので、標準のモジュール版PHPの設定を引き継いで動作します。
また、先頭行に「#!/usr/local/bin/php」を入れていただく必要はありません。

XREA SUPPORT BOARD – PHPをCGIとして動かす方法について 』より引用

とのこと。どうやら今年の春から可能になったようです。今頃気がつきました。
できるだけ手をかけずに動かすことができるなら、それに越したことはないので早速試してみました。

XREA 限定ではありますが、この方法で動かしてあげるとパーミッションの設定を変える必要がなく、PHP ファイル自体にも「#!/usr/local/bin/php」と書かなくてよいのでアップグレードの都度 PHP ファイルへに変更を加える必要がなくなります。

XREA で WordPress のファイルアップロード機能を CGI として動かす

.htaccessでカスタマイズができるので、全ての PHP を CGI として動かすのではなく指定のファイルのみ CGI として動かすことが可能です。XREA SUPPORT BOARD にも「モジュール版PHPに比べて、動作が遅くなる。負荷が掛かる。」と書かれていますので、全部を CGI として動かすのではなく、ピンポイントで CGI として動くようにしてあげるのが良いのではと思います。

ファイルアップロード機能のみ CGI として動かしたい場合は、
wp-admin/inline-uploading.php
を CGI として動くようにすればよいので以下のようにします。

  1. 適当なテキストエディタに下記の内容を書き、「.htaccess」と名前をつける。
    2008/01/07 改訂
    WP のアップロードに関する php ファイルが変わっているので、それにあわせ内容を変更

    以下、2010/08/04 追記

    WordPress バージョン 1.5 以降は、アップロードに関係している php が変更になりました。以下の様に指定すれば OK のはずです。

  2. .htaccess ファイルを、wp-admin ディレクトリの中にアップロード。

XREA で IImage browser も CGI として動かす

IImage browser については 日本語版を出してくださっている MMRT さんに
詳しく載っていますので、そちらをご覧ください。

IImage-browser 日本語版 ≪ MMRT daily life

IImage-browser 日本語版 ≪ MMRT daily life

IImage browser は簡単に言うと、WordPress のファイルアップロード機能を使いやすくして強化したようなものです。普段私はこちらを使っているのですが、やはりこれもセーフモードの制限を受けてしまうので、FTP でディレクトリをあらかじめ作りパーミッションを設定しておくという方法を取っていました。

こちらもファイルアップロード機能同様、CGI として動くようにしてあげてみました。IImage browser からディレクトリ作成をして、ディレクトリ権限を確認すると…当然ですが Apache ではなく、画像アップロードもすんなりできました :D これなら FTP でいちいちディレクトリを作ってあげる必要もなくて楽チンです。

IImage browser を CGI として動かすには、
wp-admin/iimage-browser.php
を CGI で動くようにすれば OK です。

  1. 適当なテキストエディタに下記の内容を書き、「.htaccess」と名前をつける。

  2. .htaccess ファイルを、wp-admin ディレクトリの中にアップロード。

WordPress のファイルアップロード機能と併用する場合は、 .htaccess にさきほどのものと両方を書いておけば OK です。

この方法だと元となる PHP ファイルに変更を加えなくて良いので、お手軽でいいですね。
XREA をお使いの方にはお勧めです。

07/03/03 改稿
少し文章を読みやすくなるよう改稿しました。たいして変わっていなかったらスミマセン…!

79件のコメント

  1. はじめまして。

    私もWordPressをxreaで使っています。WordPress 2.7.1への自動アップグレードができずに困っていたところ、こちらの記事に巡り会ったのです。

    無事に自動アップグレードできました!ありがとうございました。

  2. 最近XREAにして同じ悩みを抱えていてどうしていいか途方に暮れていました。
    サーバーの無料サポートにメールしてみたところ、
    upload.phpの置かれているディレクトリに.htaccessを置いてみてくださいということでした。
    .htaccessの記述方法はここで紹介されているとおりでした。

    ところが何度やってみてもダメでした。

    1) Macを使っているので「mi」を使って文字コードをShift JIS、
    CR+LF(Win)に設定。

    2) WordPressの管理画面で
     その他の設定
     ファイルアップロード
     アップロードするファイルの保存場所 wp-content/uploads
     になっているのを確認し、
     
     アップロードしたファイルを年月ベースのフォルダに整理
     に入っていたチェックを外して
     その下の項目にチェックが入っていないかどうか確認し 
     保存しました。

     つまり、デフォルト設定に戻しました。

    そして、画像アップ成功しました!
    もうロリポップに戻す寸前でした。

    ありがとうございました!助かりました!

  3. >さくらヒロシさん
    無事アップデートできたようでなによりです :)

    >nottiestyle さん
    XREA を利用している方は、一度はここでひっかかってしまいますよね~。
    アップロード成功おめでとうございます。
    XREA+WP 一緒に楽しみましょう ;)

  4. XREA で WordPress ファイルアップロード機能を利用することなんでできるのですね!
    まったく知りませんでした!
    色々と当方も苦労していいサイトを思っています。。
    また参考にさせていただきますね!
    よろしくお願いいたします

  5. はじめまして。
    XREA で WordPress ファイルアップロード機能を利用する方法は今までに考え付いたことがありませんでした。
    色々と参考にできて大変うれしいです。
    これからも記事を見せていただいてよろしいでしょうか?
    身勝手なお願いかもしりませんがよろしくお願いいたします。

  6. >やましたさん
    はじめまして!
    お返事が遅くなってしまい、すみません。
    私も最初は XREA でアップロードって難しいなぁと思っていました。
    分かってしまうと楽ですが、最初がきついですよね;

    参考にしていただけたようで幸いです。
    更新にムラがあるブログですが、これからもお気軽にいらしてください~ :)

  7. はじめまして、失礼します
    自分もxreaについて勉強中です。色々なサイトを拝見してますがまだまだ理解仕切れません・・・

    勉強不足だなと痛感しました。

    知識を分け与えて頂き参考になりました。

    また拝見させて頂くと思いますが、よろしくお願いいたします

  8. >daoka さん
    はじめまして、こんにちはー。
    xrea は少し特殊なとこもあるので躓くこともありますが
    ユーザーも多いので探せば情報がわりとでてくるので助かってます。

    またお気軽にいらしてください~。:)

  9. ピンバック: test2 : thinking
  10. ピンバック: wordpressTestPost : thinking
  11. 初めまして。

    おお!素晴らしい★
    とこの記事で大変助かったので、感謝の気持ちを込めてコメントします。

    ありがとうございましたー。

    まだまだ勉強中ですのでまた参考にさせていただきます。宜しくお願いします。

ぼの にコメントする コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です