サポート » バグ報告と提案 » Office系ファイルのメディアライブラリを含むファイルアップロードについて

  • 現在運用しているサイトにて4.5台のマイナーバージョンアップを続けて使用しています。

    タイトルの件は、Office系ファイルのx付き拡張子(docx、xlsx、pptxは確認済み)がアップロードできないバグが4.5.6以降確認できています。
    4.5.5以前はアップロードができていました。

    /wp-includes/functions.phpのwp_get_mime_typesの許可拡張子の中にはいずれも記述があります。
    最新メジャーバージョンの方は特に問題なくアップロードできるようです。

    長らく放置され、何度バージョンアップをしようとも解決に至らないので報告させていただきます。
    運用されているお客様がいらっしゃるのでバグの放置はご勘弁願いたいです。

    デベロッパーの方々にこちらの問題を解決していただきたいです。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • 最新メジャーバージョンの方は特に問題なくアップロードできるようです。

    古いバージョンにはバグが残っているが最新バージョンではバグが修正されている、ということのように思われますが、
    最新メジャーバージョンを使用しない理由が何かあるのでしょうか?

    こんにちは

    phpのバージョンは何でしょうか?
    5.3などではdocxのmime-typeがapplication/zipになっていて、アップロードに失敗します。
    docxなどのmime-typeについても確認してください。

    docxファイルの正しいmime-typeはWordPressに定義されているapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentです。

    参考:https://technet.microsoft.com/ja-jp/library/ee309278(v=office.12).aspx

    それ以外でも処理できる可能性はありますが、(php5.2ではapplication/x-zipですが、処理できます)正しいmime-typeがセットされるphp5.4以降にphpのバージョンを変更したらアップロードできないでしょうか?

    • この返信は6年、 5ヶ月前にmunyaguが編集しました。
    • この返信は6年、 5ヶ月前にmunyaguが編集しました。
    トピック投稿者 brvtm

    (@brvtm)

    @ounziw
    ご返信ありがとうございます。
    トピックの最初にもありますがより細かく説明すると、4.5から使用を始め、マイナーバージョンアップを続けていました。
    4.5~4.5.5まではdocxやxlsxのファイルはアップロードできていたが、4.5.6のマイナーバージョンを機にアップロードができなくなった、つまり新たなバグが生まれたということです。

    最新メジャーアップデートしない理由としてはWPメジャーバージョンはDB構造が変わるケースがほとんどのため、DB更新中にサイトが一時的に停止する時間が生まれてしまうのでその時間を回避すること、また、使用しているプラグインが使用不可になるリスクを避けるためです。

    @munyagu
    ご返信、参考URLのご提示ありがとうございます。
    phpのバージョンは5.3.3です。ただ上記のようにWPバージョンアップ前(4.5~4.5.5まで)はアップロードできていて、その間にphpのバージョンは変更していません。
    WPのアップデートでphp側のmime-typeに影響を及ぼすことはないかと思いますが、ライブラリ含め確認してみます。
    phpのバージョンアップについてもサイト停止の都合上から選択肢として選べない状況です。

    バグとおっしゃっていますが、これはバグではありません。
    アップロードされるファイルの中身とmime-typeが異なる、つまり例えば画像ファイルと偽ってプログラムなどをアップロードされるようなことを防ぐために追加されたセキュリティ機能です。

    詳しくは以下のURLを参照してください。

    https://kitaney-wordpress.blogspot.jp/2017/01/wordpress-471-mime.html?m=1

    記事では4.7.1ですが、同時に4.5.6にもセキュリティアップデートとして組み込まれた機能です。

    php5.3でのdocxでいうと、phpがapplication/zipだと言っているものがMicrosoft Wordなわけで、このセキュリティ機能でアップロードが阻止されています。

    修正を依頼するなら間違ったmime-typeを返しているphp5.3の方だと思いますが、php5.3はすでにサポートが終了していて、未来永劫修正してもらえることはありません。
    セキュリティアップデートもリリースされないのでそういう意味からもphpをアップデートすることをお勧めします。

    記事では4.7.1ですが、同時に4.5.6にもセキュリティアップデートとして組み込まれた機能です。

    バックポートされたのは4.5.5のようです。
    失礼しました。

    4.5.5からアップロードできなくなっていたのではないでしょうか?

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「Office系ファイルのメディアライブラリを含むファイルアップロードについて」には新たに返信することはできません。