アフィンガー5でカスタマイズをしていくと保存をするだけで妙に時間がかかったり、エラーが発生し保存ができないといったことはありませんか?
403エラーの発生はレンタルサーバーが原因?
調べた所どうやらレンタルサーバーによる影響によりエラーが発生してしまうという現象があることがわかりました。
自分の使っているレンタルサーバーはロリポップ!で403エラーが発生してしまう報告が多数確認されています。
なのでロリポップ!を利用しているアフィンガー5のテーマを使用している方のために解決方法を記載しておきますので、手順通りに作業を進めてください。

サーバーのWAFを無効にする
更に調べてみるとどうやらWAF(ウェブアプリケーションファイアウォール)という機能がカスタマイズに影響を及ぼしているということです。
WAFとはなんぞや?と検索してみると…
WAF(ワフ)はWeb Application Firewallの略で、Webアプリケーションのぜい弱性を悪用した攻撃からWebサイトを保護するセキュリティ対策です。Webサーバーの前段に設置して通信を解析・検査し、こうした攻撃からWebサイトを保護し、不正ログインを防ぐ役割で用いられます。
オンライン・バンキングやショッピングサイトのように、ユーザーからの入力を受け付けたり、リクエストに応じて動的にページを生成したりするなど、アプリケーションを作りこんだWebサイトの保護に適しています。
簡単に言うと『不正アクセスや改変を遮断』してくれるセキュリティーということです。
不正なアクセスをブロックしてくれるというのはとてもありがたいことですが、自分で改変しているカスタマイズすらブロックしてしまうというのもいかがなものかと思います。
なのでカスタマイズをするためにはWAFをいったん無効にしなければなりません。
まずはロリポップ!のサイトに行ってログインをします。
ユーザー専用ページへアクセスしたら『セキュリティ』→『WAF設定』
WAF設定へと移りますので、対象のサイトを無効に切り替えましょう。
www有りと無しの両方存在していますが、www無しのサイトを無効にしておけばいいです。
WAFが無効になる設定が完了するまで5分程度の時間がかかるので、少しだけ待つ必要があるみたいです。
その間カスタマイズした内容を保存する直前まで持っていきましょう。
その際にWAF編集のページは閉じずにそのままワードプレス管理画面でカスタマイズした内容を保存してみてください。
保存が完了しましたか?
WAFを無効化したことによってセキュリティが一時解除されてアフィリエイトタグやアドセンスコードを保存できるようになりました。
WAFの有効化を忘れずに!
先程無効化したWAFを再度有効にしておきましょう。
これを忘れてしまうとセキュリティがないままブログを公開してしまうので、忘れずに切り替えてください。

追記:Site Guardプラグインが原因だった!?
上記で紹介したWAFの有効/無効の切り替えが非常に面倒で他にも方法がないか調べていた所、どうやらSite Guardというプラグインがブロックしていた事が判明しました。
詳しい説明は省きますが、Site Guardプラグインはワードプレス用のセキュリティに関するプラグインで悪意のある侵入者を防いでくれる優秀なプラグインです。
このプラグインがサイトを不正アクセスから守っていたわけですが、サイト運営している管理人すらもブロックしてしまいます。
さすがにこのプラグインを削除するわけには行かないので、設定を見てみると『除外ルール』を作成することで問題点を解決できるようなので、どのように設定するのかを備忘録として残しておきます。
除外ルールの設定方法
自身でアクセスした際のシグネチャを知っておきましょう。
シグネチャを説明すると専門用語だらけになりそうなので、どういったものなのか知りたい方は検索して調べてください。
意味を知らなくても設定はできます。
アクセスがブロックされた場合、サーバー側でログを記録するので、そこに表示されているシグネチャを使って除外ルールを作成します。
色んな方法がありますが、一番やりやすいのは【AFFINGER5 管理】の【Google連携/広告】の自動広告で適当にアドセンスコードを貼ってSAVEしてみてください。
以下のように画面が切り替わったらOKです。
次にシグネチャをコピーします。
ロリポップ!にログインして『セキュリティ』→『WAF設定』を選択し、対象のサイトの右側にある『ログ参照』をクリックします。
先ほど403エラーでブロックされた履歴が表示されていますので、赤枠で囲んだ部分がシグネチャなのでコピーします。
最後にSite Guardの設定を開き『WAFチューニングサポート』を選択します。
機能をONにして『新しいルールを追加』します。
そうするとシグネチャという項目がありますので、先ほどコピーしておいたシグネチャを貼り付けてください。
ファイル名とコメントは空欄で構いませんので、保存を押して完了しましょう。
作成した除外ルールが表示されているのを確認して下にある『ルールを適用』をクリックすれば完了です。
これで対象のシグネチャは除外ルールとしてブロックされなくなりました。
試しに先ほど403エラーが発生したときと同様の手順で再度保存をしてみましょう。
エラーが出なくなったら問題なく処理が完了したということです。
