xrea+使用時WordPressで画像がアップロード出来ない時の解決方法

スポンサーリンク

私はxrea+というサーバーを使ってるんですが、このサーバーでWordpress2.3.2を使用した場合、画像をアップロードしようとしても、うまくアップロード出来ないんです。しようとすると、

ディレクトリ…/wp-content/uploads/2008/01 を作成できませんでした。この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか ?

などというエラーメッセージが出ます。ふむふむ、そういえばどこかでそんなことが書いてあったっけな。xreaの場合、phpはセーフモードで動くため制限を受けてしまうのだと。

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

XREA では PHP は SAFE MODE 環境で動くようになっています。

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

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

んー。これを回避するには、いくつかの方法があって、一つは「wp-content」フォルダに「uploads」というフォルダを手動で作り、「707(777)」にパーミッションを変更すればよいと別のところで読んだのですが、しかし、私はアップロードの設定で、画像のアップロード先を

wp-content > uploads

にして、その下に書いてあるようにuploads配下に年月日で分けるように設定したいわけですよ。さて、どうするか…と上記のサイトを読み進めてみると、どうやらphpをcgiとして動かすことで解決できるらしい!以下詳細。

xreaのサポートでその解決方法がしめされていました。

PHPをCGIとして動かす方法について – XREA&CORE SUPPORT BOARD

動かしたいPHPがあるディレクトリ内に下記一行を「.htaccess」に追加、または、新しく設置してください。
すべての「.php」ファイルがCGIとして実行されます。
パーミッション:644などCGIとして必須のオーナー実行権限がなくても実行できますので、標準のモジュール版PHPの設定を引き継いで動作します。
また、先頭行に「#!/usr/local/bin/php」を入れていただく必要はありません。

AddHandler application/x-httpd-phpcgi .php

と、いうわけなので、秀丸だとかterapadとか何でもいいのでエディタに以下のように記載して「.htaccess」という名前にして保存。もし保存が出来ない場合は、とりあえず「.htaccess.txt」という名前で保存しておきましょう。後で、アップロード後に「ファイルの名前を変更する」で「.txt」を削除すれば問題ありません。

<Files upload.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

<Files sample.php>
</Files>

で挟むことにより、特定のphpだけCGIとして動かすことが出来ます。今回は「upload.php」というファイルだけ動かしたいので、sample.phpの部分をupload.phpと指定しました。
これではさまないと、この.htaccessを入れたフォルダ直下のphpが全部cgiとして動いてしまいます。

上記のように記載した.htaccessファイルを、wp-adminフォルダ内に放り込めば、問題なく画像がアップロードできます。

ピンクフラワー

2009.07.30追記

wordpress2.8になって仕様が変わっています。「upload.php」は「async-upload.php」に変更してください。

<Files async-upload.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

async-upload.php
スポンサーリンク
この記事をお届けした
sorariumの最新ニュース情報を、
いいねしてチェックしよう!

シェアする

『xrea+使用時WordPressで画像がアップロード出来ない時の解決方法』へのコメント

  1. 名前:そら 投稿日:2008/01/13(日) 22:03:25 ID:79f4ad634

    テスト

  2. 名前:XREAに設置したWordPressでアップロードができないときの対処 | soi33.org 投稿日:2009/11/01(日) 21:15:48 ID:7b4309807

    […] xrea+使用時Wordpressで画像がアップロード出来ない時の解決方法 2009年11月01日 howto, その他 […]

  3. 名前:taka 投稿日:2010/03/05(金) 23:35:41 ID:48d229b6d

    非常にわかりやすいご解説で、助かりました。
    ありがとうございます。

  4. 名前:そら 投稿日:2010/03/06(土) 02:56:28 ID:6f65b275c

    >takaさん

    お役に立ててよかったです。
    どういたしまして。

  5. 名前:XREAでwpで画像うpできない « きょうのじょーば 投稿日:2010/06/13(日) 00:55:38 ID:3532b6647

    […] 参考にさせていただきました。 http://www.sky-s.net/sky-blog/archives/2008/01/13-205702.php […]

  6. 名前:ichi96tw 投稿日:2010/06/30(水) 00:26:06 ID:026abfd8f

    FC2もそうなのかってことでやってみたら・・!!
    助かりましたーありがとうございます m( _ _ )m

  7. 名前:そら 投稿日:2010/07/13(火) 21:56:31 ID:420108256

    >ichi96twさん

    fc2でも同じだったんですねー
    どういたしまして!

  8. 名前:ぽか日和 投稿日:2010/08/13(金) 17:00:33 ID:636803ecc

    XREA+とWordPress3.0.1で画像のアップロードにハマるの件

    XREA+に無事Wordpressを設置したものの、 写真の投稿がうまくいかない。 “nanchara.jpg” は、エラーのためアップロードに失敗しました ディレクトリ ほにゃらら/wp-content/uploads を作成できませ…

  9. 名前:画像アップ | ROOOOty – tyのねっこ 投稿日:2011/02/18(金) 21:23:22 ID:a88cc995f

    […] こちらを参考にしました  http://www.sky-s.net/sky-blog/……205702.php カテゴリー: wordpress   パーマリンク ← 自動リンク […]