質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

3433閲覧

WordPressでXML-RPCを利用するサーバー設定を知りたい(MOD_SECURITYエラー、403エラーを解消したい)

maifukuhara

総合スコア83

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

.htaccess

Apacheウェブサーバーにおいて、ディレクトリ単位で設置及び設定を行う設定ファイルを指します。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2015/06/15 15:18

初めまして。マイと申します。

HostGatorというサーバーで、WordPressを使い
恋愛ネタを書くサイトを運営しているのですが、
リモート投稿API(xmlrpc.php)を使い、
記事投稿しようとしたところ、サーバー側で
何らかの制限がかかり、投稿ができません。

サーバーの設定方法をご存じの方、
どうかお知恵を貸して頂けないでしょうか。よろしくお願いします。
作成したAPI投稿プログラムの他、これまでの対応内容を記載します。

■利用したいAPI投稿プログラム
WSH(VBScript)による投稿プログラムのソースコードです。
※ログインIDとパスワードは伏字にしてあります
https://docs.google.com/document/d/15ND6FM5UvI3Iz0vp8gbcstqc8385bJX-Xw4-11_aUHc/edit?usp=sharing
ソースをメモ帳にコピペしてtest.vbs等の名前で保存し、
ダブルクリックで投稿開始します(Windows環境のみ)

■正常動作する場合、
自分のローカル環境(XAMPP、InstantWordPress)、および
ロリポップサーバに設置したWordPressでは正常動作します。

投稿完了すると、下記の応答が帰ってきます。

lang

1<?xml version="1.0" encoding="UTF-8"?> 2<methodResponse> 3 <params> 4 <param> 5 <value> 6 <string>***</string> 7 </value> 8 </param> 9 </params> 10</methodResponse>

なお、<string>***</string>の部分には、
WordPress側で自動作成された、
投稿記事ID(121,122,123等)がセットされます。

■HostGatorでの応答
HostGatorに設置したWordPressでは、
下記の応答が帰ってきて、投稿ができません。

lang

1<html> 2<head> 3<title>Not Acceptable!</title></head> 4<body><h1>Not Acceptable!</h1> 5<p> 6An appropriate representation of the requested 7resource could not be found on this server. 8This error was generated by Mod_Security. 9</p> 10</body></html> 11

■これまでに行った対応
・まず最新版のWordPressを再インストールし、プラグインを全て停止しました。

・下記URLで、HOSTGATORでXMLRPCが利用可能な事を確認しました。
http://support.hostgator.com/articles/php-modules

・functions.phpに、xmlrpc.phpの動作を停止させるような
コードの記載が無い事を確認しました。

・サーバー管理画面で、「xmlrpc.php」の
パーミッションが「755」である事を確認しました。

・他にXMLRPCを用いたソフトの動きを確認するため、
Microsoft Live Writerをテスト導入したところ、
正しく投稿できるようなので、XMLRPC自体は利用可能と思われます。
(ただし、後述の別のXMLRPCアプリであるJETPACKは、
当方と同じエラーが出て動作していません)

・MOD_SECURITYの停止
WordPress設置フォルダ直下の「.htaccess」に下記を記載しました。

lang

1#Disable MOD_SECURYTY 2<IfModule mod_security.c> 3SecFilterEngine Off 4SecFilterScanPOST Off 5</IfModule>

なお、一部の海外ブログで、HostGatorは
MOD_SECURITYのバージョンが2.0系との
記事を見かけたので、こちらも試してみました。

lang

1<IfModule mod_security2.c> 2SecRuleEngine Off 3</IfModule>

しかしこちらの2.0系の設定にした場合は、
「Error 500 Internal Server Error」が発生し
WordPressサイト全体が表示されなくなるので、
上記の1.0系の記載に戻しています。

・xmlrpc.php、POST送信のアクセス許可設定
WordPress設置フォルダ直下の「.htaccess」に下記を記載しました。

lang

1#Allow file access 2<Files xmlrpc.php> 3Order Allow,Deny 4Allow from 192.168.**.** 5Deny from all 6</Files>

※アスタリスク「*」は、私のPCのIPを記載しています。

■現在の状況
ここまで設定したところ、
サーバーからの応答は下記のような 403 Forbidden エラーを示す
HTML文書がエラーとして帰っています。(長いのでGoogleDocで)
https://docs.google.com/document/d/1QM5YtOXANXclgOUGIVGX6CIGSPsvH8mrwYxGSTkAqyQ/edit?usp=sharing

また、調査の一環で、XMLRPCを利用した別の外部アプリとして有名な、
JETPACKをテスト導入したところ、こちらも動作せず、
私のAPIテスト投稿WSHと同じく、403エラーが発生しているようでした。

下記のJETPACKテストサイトに、
http://jetpack.me/support/debug/
私のサイトのURLを入れると、403エラーの表示が出ました。
http://nugasekake.motewaza.net/

これらの他、海外のフォーラムやサイトをあたりましたが、
私の検索力ではこれ以上の対応策は見つけられず、
HostGatorサポートへのメールも出しましたが
パーミッション変更してみたら、といったFAQコピペが来るだけで、
解決にはいたらず、困り果ててしまいました。

「こういう設定を試してみたら?」とか
「このコードは間違ってるよ」とか
何かヒントがあればご享受頂きたいです。
どうぞ、よろしくおねがいいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こちらのページを見ると、SecFilterEngine、SecFilterScanPOST は使えないと書いています。
そしてmod_secを無効にしてほしい場合は、電話かライブチャットで連絡してほしいと書いてあります。

SecFilterEngine and SecFilterScanPOST

HostGatorへのWordPressのインストールは、WordPress Managerを使って作成されましたか?

Optimized WordPress

ちなみに、このページの Security Updates には、WordPress専用のmod_secルールを設定していますとなっています。

投稿2015/06/16 03:16

takutok

総合スコア392

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maifukuhara

2015/06/18 12:38

ありがとうございます。見落としていました。 Turn off SecFilterEngine、SecFilterScanPOSTという タイトルでサポセンにメールしたら対応してくれました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問