「PHP」タグアーカイブ

bingbot他クローラーの巡回によるPHPメモリオーバーエラー対処

(2016年)9月初めにショップwebのサーバープランを変更したついでに、レスポンシブデザイン(HTML共通化)化し、CSSでパソコン系とモバイル系に分けるように変更した。

プラグインを利用しなくともモバイル表示できるようにしたので、若干表示スピードが上がったように思う。

そのせいか分からないが、やたら色々なクローラーBOTが巡回するようになってきた。これがメモリをやたら食い、PHPメモリエラーを起こすのである。

はじめは、なぜエラーが出ているのか分からず、数日ほっておいたが、エラーに伴いweb表示がフリーズする事態を招きはじめたので本格的にエラーログとアクセスログを見比べての調査をおこなった。

するとbingBOTと他のBOTが来たときにメモリエラー(PHP Fatal error: Allowed memory size of 100663296 bytes exhausted)を起こしていたのであった。

ま、google-imageBotやYahoo! Slurpも時々、エラーになりますけど頻度が圧倒的に少なかったので今回は対象から外しています。

エラーの対処として、クロールの禁止とクロール間隔の設定をrobots.txtに施した(9月24-25日にかけて)。

AhrefsBotとXoviBotはクロール禁止

bingbotはクロール間隔30秒に設定

今後、他のBOTでもエラーが出るようであれば、その都度、対処しよう。

(2016年9月26日現在、エラーは出ていない、まだ設定一日目だけどw)