サポート » 使い方全般 » 画像のアップで出るエラーについて

  • 解決済 masaosada

    (@masaosada)


    教えてください。

    WordPressの3.5を今は使っているのですが、その前のバージョン3.42を使っていたときから突然、画像のアップが上手くできなくなりました。

    具体的には3.42では投稿時やメディアの新規追加に、3.5の場合メディアの新規追加のときは画像をアップすると、100%になったあと処理中になり、ファイル名で変な名前になって表示されます。例えば「4�」など。

    ライブラリを見るとちゃんとアップされています。

    そして3.5で投稿時にメディアを追加しようとする場合は、まずライブラリの画像のサムネイルが表示されません。
    そこに画像をアップすると赤い文字で「アップロード中にエラーが発生しました。後ほど再度お試しください。」というエラーが出ます。これも同じようにライブラリには登録されています。

    一時的な回避策を見つけることはできました。
    「Wordpressの更新」で「再インストール」をすると、しばらく(約1日)は普通に画像のアップもライブラリの閲覧や追加もできますが、毎日Wordpressを手動で更新するのは手間で困っています。

    ちなみに、手動で再インストールもしましたが、改善されません。
    やり方は、WordPress のアップグレード/詳細 – WordPress Codex 日本語版を見ました。

    プラグインのコンフリクトも考えて、全部停止して画像をアップしようとしてみましたが、投稿画面からのメディアの追加で同じようにサムネイルが表示され、同じエラーメッセージが出てきました。

    ブラウザの問題かと思い、ブラウザを変えてみても同じでした。

    同じドメイン、同じSQLに別でWordpressを入れていますが、こちらは問題なく使えています。

    同じような症状で、改善できた方いませんか?もしくは問題が何かご存じで直し方を知っている方いたら教えていただけたら幸いです。

    よろしくお願いします。

10件の返信を表示中 - 16 - 25件目 (全25件中)
  • エラーメッセージ出るようになったのですが、上でも書いたとおりwordpressをダッシュボードで再インストールすると24時間ほどちゃんと使えるんですけど、まだ今は画像がアップされる状態なんです。

    なので、明日にならないとまた元のダメな状態に戻りません。

    PHPのバージョンは5.2だったので5.3にしてみました。
    でも、Wordpressを再インストールしているので、これも効果は明日出ないとわかりません。

    いずれにしろ、また明日報告させていただきます。

    ありがとうございます。

    返信遅くなりました。

    エラーメッセージなんですけど、写真がちゃんとアップできる状態だとデバッグが利いていてエラーメッセージが表示されるのですが、写真がアップできない状態ではデバッグが機能していないのかエラーメッセージが出ません。

    WordPressをダッシュボードから再インストールすると、エラーメッセージは出ている(テーマのエラーでした)のですが、写真がアップできるので「なんで写真がアップできないか」の検証ができないということです。

    なんか変な変な説明かもしれませんが、状況わかっていただけますか?

    define(‘WP_DEBUG’, true);の場所は define (‘WPLANG’, ‘ja’);の真下です。

    ということで結局今のところ何も解決せず…です。

    状況をまとめますね。

    【大前提】下記の状態で検証してください
     ・プラグインは「すべて」無効(むしろ再インストールしたなら入れないほうがいいかも)
     ・テーマはデフォルトテーマ(Twenty~テーマ)
     ・wp-config.php は UTF-8 で保存(BOMなし)

    【やっておいたほうがいいこと】
     ・define(‘WP_DEBUG’, true);
     ・define(‘WP_DEBUG_LOG’, true);
      (これで wp-content/debug.log にエラーが出力されます。.logは666に設定)
     ・define(‘WP_CACHE’, false);
      (キャッシュ機能を向こうにする)

    この状態で、下記が再現されると考えて良いですか?
     ・WPを再インストール後24時間は正常動作する(この間に大前提を崩さない)
     ・24時間経つと不安定になる
      (アップロードできない、メディアライブラリが見えない、一覧が表示されない)
     ・WP_DEBUG は正常に動いている時でないと動作しない
      (肝心の不具合時にエラーが出なくなる)

    テーマのエラーというのはデフォルトテーマで出たもので、今回の件とは関係ないものでしょうか?(deprecatedエラー等)

    当方 lolipop で使用していますが、今のところ特に問題は発生していません。
    サーバに問題があるかどうかの切り分けは、ローカルサーバーでも試してみると良いかも知れません。
    InstantWPなど、USBで動作するくらい手頃なツールもありますので、そちらで試してみると良いと思います。

    早く解決できると良いですね…!

    mekemoke様

    丁寧な返信ありがとうございます。
    教えていただいたとおり

    • テーマをデフォルトに Twenty Twelve
    • wp-config.php は UTF-8 で保存(BOMなし)
    • define(‘WP_DEBUG’, true);、define(‘WP_DEBUG_LOG’, true);、define(‘WP_CACHE’, false);をwp-config.phpに追記

    としました。

    そのままでは不具合が起きたまま、debugも動かずだったので再インストールしました。今は正常に動作しているので、また明日報告したいと思います。

    それとwp-contentにはdebug.logがまだなかったのは、エラーが出てなかったので、ファイルができたときにパーミッションが666か確認します。

    InstantWPはWindows用なんですね…。Macを使っているのでとりあえず上の設定でどうなるか、確かめてみたいと思います。

    それとロリポップにも問い合わせたところ、先方でも調査をしてくれるとのことでした。
    もし解決策や原因をロリポップで見つけた場合も、情報共有ということでこちらに掲載したいと思います。

    よろしくお願いします。

    上記の設定にし、24時間が経ったのでどうなったかを報告いたします。

    まずアップデート直後も、24時間経った今もdebugがエラーは出ていません。
    ただ24時間経って画像のアップや過去の記事の一覧は出なくなりました。

    debug.logも生成されていないのですが、これはこちらで内容がないdebug.logを作成しないといけませんか?それとも自動でエラーが出た時点で生成されるのでしょうか。
    それともdebug_logもdebugが動作しないので動作していないのかもしれません。

    もしかして自分のパソコンが悪いのかも?と思い、別のMacや友人のWindowsで画像をアップしてみましたが、結局同じでした。

    Macだとこっちですね。
    http://office-taku.com/201211/web/3084.html

    ちなみに debug.log は作成して666にしておいたほうが間違いありません。

    時間によって何かあるってことは…wp-cronかキャッシュのような気もします。
    (キャッシュが働けば新しい表示がな行ことも説明がつきますが…一覧ェ…)
    画面見てみればわかることもあるかも知れませんが、マナー違反+難しいですかね。

    Mac版のやつを入れてみました。
    今のところ正常に動いています。また1日経ってどうなるか報告したいと思います。

    ちなみに同じサーバーに新しくWordpressを入れてみましたが、やはり画像のアップや過去記事の一覧が出ませんでした。

    画面を見るのはWordpressのダッシュボードと言うことですか?それともFTP自体ですか?
    FTPはせっかく手を差しのべていただいているのですが、ちょっと抵抗あるのが正直なところです。Wordpressのダッシュボードは新しく入れたデータが何もないやつで良ければ、問題ありませんよ。

    ロリポップに新規で入れて動作しないというのはやはりロリポップ内の問題のような気がしてなりません。

    こちら、すでに解決されているでしょうか?

    私も同じ現象が発生して困っています。
    完全な解決にはなっていませんが、応急処置の方法が分かったので記します。

    以下をfunction.php に記述すればアップロード後に編集画面に変わります。

    add_filter('upload_post_params', 'custom_upload_post_params');
    function custom_upload_post_params( $post_params )
    {
    	$post_params["short"]=0;
    	$post_params["fetch"]=1;
    	return $post_params;
    }

    アップロード後にメディアのIDらしき数字が出ていたのでソースを追ったところ、
    wp-admin/async-upload.phpの92行目に以下のソースがあり、

    if ( $_REQUEST['short'] ) {
    	// short form response - attachment ID only
    	echo $id;
    } else {
    	// long form response - big chunk o html
    	$type = $_REQUEST['type'];
    	echo apply_filters("async_upload_{$type}", $id);
    }

    この$_REQUEST[‘short’]の送信元は wp-admin/includes/media.php の1499行目にありました。

    $post_params = array(
    		"post_id" => $post_id,
    		"_wpnonce" => wp_create_nonce('media-form'),
    		"type" => $_type,
    		"tab" => $_tab,
    		"short" => "1",
    );

    この $post_params にはフックがありましたので、それを利用したらうまくいきました。
    「処理中」のままステータスが変わらない点は解決していませんが、
    これをきっかけに解決に進むと幸いです。

    shotets様

    コメントありがとうございます。
    結局サーバーとして使っていたロリポップ!の全面協力を得て、別のSQLサーバーに移したりしたのですが、ロリポップ!上では解決しませんでした。

    試しにSQLのデータを抜き出して、ローカルのWordpressに入れたところキチンと動作することがわかったので、Xserverでその後問題なく動作しています。

    既にクローズしている件への投稿、失礼します。
    3.5.2の環境で私も突然同じ状態になったため、mekemokeさんの情報を参照しプラグインを全て無効にしたところ現象が収まりました。
    どのプラグインだったか、を切り分けた結果、Twitter関連の「Widget Twitter VJCK」である事が分かりました。
    このプラグインが悪いわけではなく環境と合わなくなったため等と推測していますが、プログラミングの知識はほぼ0であるためこれ以上の追求はしていません。

    プラグインは対外的なもので内部的には関与しないという間違った先入観を持っていたため、mekemokeさんのアドバイスは大変役立ちました。
    ありがとうございました。

10件の返信を表示中 - 16 - 25件目 (全25件中)
  • トピック「画像のアップで出るエラーについて」には新たに返信することはできません。