Googleタグマネージャーでコンテナ公開後に403 Forbiddenとなる時の対処法

ウオトミズ(UOTOMIZU)の中の人

Googleタグマネージャーでコンテナ公開後に403 Forbittenとなる時の対処法をまとめた。

状況説明

Googleタグマネージャーでイベントトラッキングを設定して公開したところ、403 Forbiddenとなりページにアクセスができなくなった。

 

 

  • Xserverのレンタルサーバーを使用してWordPressサイトを運営。
  • 問題動作:コンテナ公開後、ページにアクセスしたり、内部リンクを踏むと高頻度に確率で403 Forbiddenエラーとなる。
  • Googleタグマネージャーを動かすためのスクリプトを取り除くと、元に戻る。

 

 

解決策1:<noscript>要素を取り除く

調べていると同じような不具合が起きた人が一定数いる様子。

Googleのフォーラムで得た情報だけど、body要素内の<noscript>を取り除くことで不具合が解消した人もいるので、試してみると良いかもしれない。

 

解決策1:下記のコードを消去する。

header.php


<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/Sample-URL"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

 

私はこれだと解決しなかった。

 

解決策2:WAF設定の機能をOFFにする

解決策1で不具合が解消されなかった場合、レンタルサーバー側のWAF設定を一旦全てOFFにしてみてほしい。

解決策2はサーバー側でWAF対策を設定している場合に有効かもしれない方法。

 

WAF設定を全てOFFにしてからしばらく経つと403 Forbiddenエラーが出なくなる。

エラーが出なくなった場合、WAF設定でONになっている機能が、Googleタグマネージャー のスクリプトの何らかの動きを不正アクセスと誤認したことが原因と考えられる。

エラーが出ないことを確認した後に、一つずつONにしていって、問題が発生した原因となっている項目を明らかにし、それのみをOFFにする。

 

私の場合は、SQL対策の項目をONにした場合にエラーが出たので、一番はじめにSQL対策の項目をOFFにしてみると良いかも。

 

解決策3:テーマ側でイベントトラッキングの設定をする

もともとWAF設定をしていない場合や、解決策2で解決しない場合や、WAF機能をOFFにしたくない場合は、タグマネージャーを使用しないことをおすすめする。

 

タグマネージャー を使用せずともイベントトラッキングの設定は可能なので、テーマ側でJavaScriptで設定する。

 

 

.