WordPressで「IP Geo Block」を使っていて、特定のファイルがアップロードできないときの対処方法(HTTPエラー)
特に海外からのスパムを遮断してくれる、WordPressのプラグイン「IP Geo Block」。
非常に良くできたプラグインで、TEXT FIELDでも製作者さまに感謝しつつ現在でも利用しており、これを使いだしてから海外からのスパム攻撃(コメント、お問い合わせ)は、ほぼ止まっています(数ヶ月に1通くらい変なのが来ることはあるけど)。
ところが先日、ブログ記事を書いているときに「テキストファイルがアップロードできない」という事態に陥りました。
通常WordPressでは画像ファイル(.jpg .gif .png)など以外にも、テキストファイル(.txt)動画ファイル(.wmv .mp4)など色々なファイルをアップロードすることが可能で、私も以前は普通にアップロードできていました。
なので、今回アップロードできないことはプラグインのせいだと思ってはいたのですが、それをキャッシュプラグイン「Litespeed」だと思いこんでいたので、原因特定が遅くなってしまいました。
結果的には「IP Geo Blockが仕事をキチンとしていた」ということでした。
WordPressで特定のファイルがアップロード不可になる(IP Geo Block使用時)の対処方法
まずテキストファイルをアップロードしようとしたときのエラー画面を示しておきます。
このようにメディアのマルチアップローダーを使用してテキストファイルをアップロードしようとすると、進捗バーが100%で止まり、上部に「HTTPエラー」と表示されます。
ファイルを直接指定してやる「ブラウザアップローダー」に切り替えても、エラーになりアップロード自体ができない状態です。
ワードプレスのダッシュボード(管理画面)から「設定」>「IP Geo Block」へと進みます。
IP Geo Blockの設定画面になったら、タブが「設定」になっていることを確認。
少し下へスクロールさせると「悪意あるアップロード防止」という項目がありますので「許可するMINEタイプのホワイトリスト」をクリック。
一覧が表示されますので、その中から「txt」と書かれたもの(もしくはご希望のファイルのMINEタイプ)を探しましょう。恐らくチェックが外れていると思います。
これにチェックを入れたあと、画面一番下の「保存する」をクリックすればOKです。
再度マルチアップローダーの画面に戻り、アップロードするとちゃんとアップロードできると思います。
「許可するMINEタイプのホワイトリスト」とは?
ホワイトリストとは「記載されたものは通す」という設定になります。
ここではチェックの入っているMINEタイプのファイルはアップロード可能になるということですね。
MINEタイプというのを聞いたことがない方もあるかもしれません。
恐らく「ファイルの拡張子」というのはきいたことがあるのではないでしょうか?
「.txt」とか「.jpg」とかいうやつですね。
拡張子はコンピュータがファイルの種類を認識するもので、MINEタイプとはWebでよく使われるものです。
例えばテキストファイルであれば、拡張子は「.txt」MINEタイプは「txt/plan」のような形になります(タイプ名/サブタイプ名)。
普通に使う分にはあまり意識しないでもOKです。
注意点
ここはちょっと分からないのですが、一応デフォルトでテキストファイルのアップロードは不可になっているので、アップロード時以外は再びチェックを外しホワイトリストから除外しておく方が良いように思われます。
と言うか、普通にWordPressを使っている場合だと画像ファイル系以外のアップロードを行うことはあまりないと思われますので(動画ならYOUTUBEの方がいいですし、テキスト系でも投稿サイトのようにクラウドに置く方が何かと便利です)使わないものはホワイトリストから除外しておく方が、セキュリティ的には安全と言えるかもしれませんね。
ディスカッション
コメント一覧
まだ、コメントがありません