最近WordPressのエディタとしてUlyssesを使い始めたのですが、これが非常に使いやすい。見た目はシンプルなMarkdownエディタだが、痒いところに手が届く、やりたいことは大抵できるのでとても気に入っています。が、記事を書いてWordPressに投稿する際に時々エラーが出ることが。
「投稿できません 」「サーバから互換性の問題が報告されました。」というエラーメッセージが表示され、投稿に失敗します。
サーバのセキュリティ設定が原因
このサイトはロリポップサーバーで運用しているのですが、UlyssesがWordPressへの投稿に使用しているAPIが弾かれていたのが原因の模様。
ロリポップの管理画面にログインし、「WAF設定」を確認してみます。
弊サイトのドメインに対して、WAFが有効となっています。「ログ参照」から詳細を確認したところ、UlyssesからXML-RPC APIの操作が行われており、これをブロックしたというログが確認できました。
「無効にする」をクリックし、WAFを無効化。
5分程度待つと設定が反映され、Ulyssesからの投稿が正常に行えるようになりました。
ただし、このままWAFを無効化しておくのはセキュリティ上よろしくないので、除外設定を行います。
WAF除外設定
詳しくはロリポップ公式にも。
PHPやCGIでプログラムの編集をすると403エラーが表示されます。
.htaccessに除外設定を追記するだけなので、ロリポップFTPで作業できますね。
.htaccessにSiteGuardUserExcludeSig 「ログに表示されているシグネチャ名」を一行追記でOKです。
設定完了後はWAFを再度有効化しておきましょう。
これでWAFを無効化することなく、Ulyssesから記事を投稿することが可能になります。