Если сайт по непонятным причинам начал жутко тормозить

#1 16 декабря 2016 в 18:07
Здравствуйте! Хочу поделиться с Вами решением одной из проблем, связанных с нагрузкой сайтов на хостинг.

И так какое-то время назад один из моих сайтов стал постоянно зависать, даже не тормозить а именно зависать на 30-60 сек, а иногда и до пары минут доходило…

Первое на что я стал грешить — это конечно же на кривые компоненты или виджеты, долго и мучительно изучал отладку и включал, отключал их, но в один прекрасный момент заметил, что и в админ панеле бывают зависоны… Подумал я что сервер виноват, ан нет, сервер имеет достаточную мощность для 30 таких сайтов, как мой. Следующим шагом стал грешить на медленную связь с БД, но и тут оказалось всё в порядке. Ну подумал я, дело в ПО сервера и достал я бубен и стал бить в него, вообщем запустил сайт на только что собранной центоси и через пол часа зависоны стали продолжаться, хм, подумал о ддос, но другие сайты на этом сервере работали нормально, вис только 1… И тут я закрыл сайт от юзверей и стал менять шаблоны и тукать пальцем в небо и на удивление обнаружил, что всё работает и притом очень даже быстро… озадачился....

Вообщем нагуглил, что бывают этакие вредные и агрессивные боты, в частности спам боты, хотя и не только и надо их запрещать, притом в robots.txt не все смотрят из них и нашлось решение такое:

В корне сайта ищем файлик .htaccess а далее в конец вставляем этот список:


  1.  
  2. # Ѕлокировка по USER AGENT:
  3. SetEnvIfNoCase User-Agent "ahrefs" bad_bot
  4. SetEnvIfNoCase User-Agent "Majestic" bad_bot
  5. SetEnvIfNoCase User-Agent "[Ww]eb[Bb]andit" bad_bot
  6. SetEnvIfNoCase User-Agent "MSFrontPage" bad_bot
  7. SetEnvIfNoCase User-Agent "MJ12bot" bad_bot
  8. SetEnvIfNoCase User-Agent "AhrefsBot" bad_bot
  9. SetEnvIfNoCase User-Agent "dotbot" bad_bot
  10. SetEnvIfNoCase User-Agent "SputnikBot" bad_bot
  11. SetEnvIfNoCase User-Agent "SolomonoBot" bad_bot
  12. SetEnvIfNoCase User-Agent "InterfaxScanBot" bad_bot
  13. SetEnvIfNoCase User-Agent "Aboundex" bad_bot
  14. SetEnvIfNoCase User-Agent "80legs" bad_bot
  15. SetEnvIfNoCase User-Agent "360Spider" bad_bot
  16. SetEnvIfNoCase User-Agent "^Java" bad_bot
  17. SetEnvIfNoCase User-Agent "^Cogentbot" bad_bot
  18. SetEnvIfNoCase User-Agent "^Alexibot" bad_bot
  19. SetEnvIfNoCase User-Agent "^asterias" bad_bot
  20. SetEnvIfNoCase User-Agent "^attach" bad_bot
  21. SetEnvIfNoCase User-Agent "^BackDoorBot" bad_bot
  22. SetEnvIfNoCase User-Agent "^BackWeb" bad_bot
  23. SetEnvIfNoCase User-Agent "Bandit" bad_bot
  24. SetEnvIfNoCase User-Agent "^BatchFTP" bad_bot
  25. SetEnvIfNoCase User-Agent "^Bigfoot" bad_bot
  26. SetEnvIfNoCase User-Agent "^Black.Hole" bad_bot
  27. SetEnvIfNoCase User-Agent "^BlackWidow" bad_bot
  28. SetEnvIfNoCase User-Agent "^BlowFish" bad_bot
  29. SetEnvIfNoCase User-Agent "^BotALot" bad_bot
  30. SetEnvIfNoCase User-Agent "Buddy" bad_bot
  31. SetEnvIfNoCase User-Agent "^BuiltBotTough" bad_bot
  32. SetEnvIfNoCase User-Agent "^Bullseye" bad_bot
  33. SetEnvIfNoCase User-Agent "^BunnySlippers" bad_bot
  34. SetEnvIfNoCase User-Agent "^Cegbfeieh" bad_bot
  35. SetEnvIfNoCase User-Agent "^CheeseBot" bad_bot
  36. SetEnvIfNoCase User-Agent "^CherryPicker" bad_bot
  37. SetEnvIfNoCase User-Agent "^ChinaClaw" bad_bot
  38. SetEnvIfNoCase User-Agent "Collector" bad_bot
  39. SetEnvIfNoCase User-Agent "Copier" bad_bot
  40. SetEnvIfNoCase User-Agent "^CopyRightCheck" bad_bot
  41. SetEnvIfNoCase User-Agent "^cosmos" bad_bot
  42. SetEnvIfNoCase User-Agent "^Crescent" bad_bot
  43. SetEnvIfNoCase User-Agent "^Custo" bad_bot
  44. SetEnvIfNoCase User-Agent "^AIBOT" bad_bot
  45. SetEnvIfNoCase User-Agent "^DISCo" bad_bot
  46. SetEnvIfNoCase User-Agent "^DIIbot" bad_bot
  47. SetEnvIfNoCase User-Agent "^DittoSpyder" bad_bot
  48. SetEnvIfNoCase User-Agent "^Download Demon" bad_bot
  49. SetEnvIfNoCase User-Agent "^Download Devil" bad_bot
  50. SetEnvIfNoCase User-Agent "^Download Wonder" bad_bot
  51. SetEnvIfNoCase User-Agent "^dragonfly" bad_bot
  52. SetEnvIfNoCase User-Agent "^Drip" bad_bot
  53. SetEnvIfNoCase User-Agent "^eCatch" bad_bot
  54. SetEnvIfNoCase User-Agent "^EasyDL" bad_bot
  55. SetEnvIfNoCase User-Agent "^ebingbong" bad_bot
  56. SetEnvIfNoCase User-Agent "^EirGrabber" bad_bot
  57. SetEnvIfNoCase User-Agent "^EmailCollector" bad_bot
  58. SetEnvIfNoCase User-Agent "^EmailSiphon" bad_bot
  59. SetEnvIfNoCase User-Agent "^EmailWolf" bad_bot
  60. SetEnvIfNoCase User-Agent "^EroCrawler" bad_bot
  61. SetEnvIfNoCase User-Agent "^Exabot" bad_bot
  62. SetEnvIfNoCase User-Agent "^Express WebPictures" bad_bot
  63. SetEnvIfNoCase User-Agent "Extractor" bad_bot
  64. SetEnvIfNoCase User-Agent "^EyeNetIE" bad_bot
  65. SetEnvIfNoCase User-Agent "^Foobot" bad_bot
  66. SetEnvIfNoCase User-Agent "^flunky" bad_bot
  67. SetEnvIfNoCase User-Agent "^FrontPage" bad_bot
  68. SetEnvIfNoCase User-Agent "^Go-Ahead-Got-It" bad_bot
  69. SetEnvIfNoCase User-Agent "^gotit" bad_bot
  70. SetEnvIfNoCase User-Agent "^GrabNet" bad_bot
  71. SetEnvIfNoCase User-Agent "^Grafula" bad_bot
  72. SetEnvIfNoCase User-Agent "^Harvest" bad_bot
  73. SetEnvIfNoCase User-Agent "^hloader" bad_bot
  74. SetEnvIfNoCase User-Agent "^HMView" bad_bot
  75. SetEnvIfNoCase User-Agent "^HTTrack" bad_bot
  76. SetEnvIfNoCase User-Agent "^humanlinks" bad_bot
  77. SetEnvIfNoCase User-Agent "^IlseBot" bad_bot
  78. SetEnvIfNoCase User-Agent "^Image Stripper" bad_bot
  79. SetEnvIfNoCase User-Agent "^Image Sucker" bad_bot
  80. SetEnvIfNoCase User-Agent "Indy Library" bad_bot
  81. SetEnvIfNoCase User-Agent "^InfoNaviRobot" bad_bot
  82. SetEnvIfNoCase User-Agent "^InfoTekies" bad_bot
  83. SetEnvIfNoCase User-Agent "^Intelliseek" bad_bot
  84. SetEnvIfNoCase User-Agent "^InterGET" bad_bot
  85. SetEnvIfNoCase User-Agent "^Internet Ninja" bad_bot
  86. SetEnvIfNoCase User-Agent "^Iria" bad_bot
  87. SetEnvIfNoCase User-Agent "^Jakarta" bad_bot
  88. SetEnvIfNoCase User-Agent "^JennyBot" bad_bot
  89. SetEnvIfNoCase User-Agent "^JetCar" bad_bot
  90. SetEnvIfNoCase User-Agent "^JOC" bad_bot
  91. SetEnvIfNoCase User-Agent "^JustView" bad_bot
  92. SetEnvIfNoCase User-Agent "^Jyxobot" bad_bot
  93. SetEnvIfNoCase User-Agent "^Kenjin.Spider" bad_bot
  94. SetEnvIfNoCase User-Agent "^Keyword.Density" bad_bot
  95. SetEnvIfNoCase User-Agent "^larbin" bad_bot
  96. SetEnvIfNoCase User-Agent "^LexiBot" bad_bot
  97. SetEnvIfNoCase User-Agent "^lftp" bad_bot
  98. SetEnvIfNoCase User-Agent "^libWeb/clsHTTP" bad_bot
  99. SetEnvIfNoCase User-Agent "^likse" bad_bot
  100. SetEnvIfNoCase User-Agent "^LinkextractorPro" bad_bot
  101. SetEnvIfNoCase User-Agent "^LinkScan/8.1a.Unix" bad_bot
  102. SetEnvIfNoCase User-Agent "^LNSpiderguy" bad_bot
  103. SetEnvIfNoCase User-Agent "^LinkWalker" bad_bot
  104. SetEnvIfNoCase User-Agent "^lwp-trivial" bad_bot
  105. SetEnvIfNoCase User-Agent "^LWP::Simple" bad_bot
  106. SetEnvIfNoCase User-Agent "^Magnet" bad_bot
  107. SetEnvIfNoCase User-Agent "^Mag-Net" bad_bot
  108. SetEnvIfNoCase User-Agent "^MarkWatch" bad_bot
  109. SetEnvIfNoCase User-Agent "^Mass Downloader" bad_bot
  110. SetEnvIfNoCase User-Agent "^Mata.Hari" bad_bot
  111. SetEnvIfNoCase User-Agent "^Memo" bad_bot
  112. SetEnvIfNoCase User-Agent "^Microsoft.URL" bad_bot
  113. SetEnvIfNoCase User-Agent "^Microsoft URL Control" bad_bot
  114. SetEnvIfNoCase User-Agent "^MIDown tool" bad_bot
  115. SetEnvIfNoCase User-Agent "^MIIxpc" bad_bot
  116. SetEnvIfNoCase User-Agent "^Mirror" bad_bot
  117. SetEnvIfNoCase User-Agent "^Missigua Locator" bad_bot
  118. SetEnvIfNoCase User-Agent "^Mister PiX" bad_bot
  119. SetEnvIfNoCase User-Agent "^moget" bad_bot
  120. SetEnvIfNoCase User-Agent "^Mozilla/3.Mozilla/2.01" bad_bot
  121. SetEnvIfNoCase User-Agent "^Mozilla.*NEWT" bad_bot
  122. SetEnvIfNoCase User-Agent "^NAMEPROTECT" bad_bot
  123. SetEnvIfNoCase User-Agent "^Navroad" bad_bot
  124. SetEnvIfNoCase User-Agent "^NearSite" bad_bot
  125. SetEnvIfNoCase User-Agent "^NetAnts" bad_bot
  126. SetEnvIfNoCase User-Agent "^Netcraft" bad_bot
  127. SetEnvIfNoCase User-Agent "^NetMechanic" bad_bot
  128. SetEnvIfNoCase User-Agent "^NetSpider" bad_bot
  129. SetEnvIfNoCase User-Agent "^Net Vampire" bad_bot
  130. SetEnvIfNoCase User-Agent "^NetZIP" bad_bot
  131. SetEnvIfNoCase User-Agent "^NextGenSearchBot" bad_bot
  132. SetEnvIfNoCase User-Agent "^NG" bad_bot
  133. SetEnvIfNoCase User-Agent "^NICErsPRO" bad_bot
  134. SetEnvIfNoCase User-Agent "^niki-bot" bad_bot
  135. SetEnvIfNoCase User-Agent "^NimbleCrawler" bad_bot
  136. SetEnvIfNoCase User-Agent "^Ninja" bad_bot
  137. SetEnvIfNoCase User-Agent "^NPbot" bad_bot
  138. SetEnvIfNoCase User-Agent "^Octopus" bad_bot
  139. SetEnvIfNoCase User-Agent "^Offline Explorer" bad_bot
  140. SetEnvIfNoCase User-Agent "^Offline Navigator" bad_bot
  141. SetEnvIfNoCase User-Agent "^Openfind" bad_bot
  142. SetEnvIfNoCase User-Agent "^OutfoxBot" bad_bot
  143. SetEnvIfNoCase User-Agent "^PageGrabber" bad_bot
  144. SetEnvIfNoCase User-Agent "^Papa Foto" bad_bot
  145. SetEnvIfNoCase User-Agent "^pavuk" bad_bot
  146. SetEnvIfNoCase User-Agent "^pcBrowser" bad_bot
  147. SetEnvIfNoCase User-Agent "^PHP version tracker" bad_bot
  148. SetEnvIfNoCase User-Agent "^Pockey" bad_bot
  149. SetEnvIfNoCase User-Agent "^ProPowerBot/2.14" bad_bot
  150. SetEnvIfNoCase User-Agent "^ProWebWalker" bad_bot
  151. SetEnvIfNoCase User-Agent "^psbot" bad_bot
  152. SetEnvIfNoCase User-Agent "^Pump" bad_bot
  153. SetEnvIfNoCase User-Agent "^QueryN.Metasearch" bad_bot
  154. SetEnvIfNoCase User-Agent "^RealDownload" bad_bot
  155. SetEnvIfNoCase User-Agent "Reaper" bad_bot
  156. SetEnvIfNoCase User-Agent "Recorder" bad_bot
  157. SetEnvIfNoCase User-Agent "^ReGet" bad_bot
  158. SetEnvIfNoCase User-Agent "^RepoMonkey" bad_bot
  159. SetEnvIfNoCase User-Agent "^RMA" bad_bot
  160. SetEnvIfNoCase User-Agent "Siphon" bad_bot
  161. SetEnvIfNoCase User-Agent "^SiteSnagger" bad_bot
  162. SetEnvIfNoCase User-Agent "^SlySearch" bad_bot
  163. SetEnvIfNoCase User-Agent "^SmartDownload" bad_bot
  164. SetEnvIfNoCase User-Agent "^Snake" bad_bot
  165. SetEnvIfNoCase User-Agent "^Snapbot" bad_bot
  166. SetEnvIfNoCase User-Agent "^Snoopy" bad_bot
  167. SetEnvIfNoCase User-Agent "^sogou" bad_bot
  168. SetEnvIfNoCase User-Agent "^SpaceBison" bad_bot
  169. SetEnvIfNoCase User-Agent "^SpankBot" bad_bot
  170. SetEnvIfNoCase User-Agent "^spanner" bad_bot
  171. SetEnvIfNoCase User-Agent "^Sqworm" bad_bot
  172. SetEnvIfNoCase User-Agent "Stripper" bad_bot
  173. SetEnvIfNoCase User-Agent "Sucker" bad_bot
  174. SetEnvIfNoCase User-Agent "^SuperBot" bad_bot
  175. SetEnvIfNoCase User-Agent "^SuperHTTP" bad_bot
  176. SetEnvIfNoCase User-Agent "^Surfbot" bad_bot
  177. SetEnvIfNoCase User-Agent "^suzuran" bad_bot
  178. SetEnvIfNoCase User-Agent "^Szukacz/1.4" bad_bot
  179. SetEnvIfNoCase User-Agent "^tAkeOut" bad_bot
  180. SetEnvIfNoCase User-Agent "^Teleport" bad_bot
  181. SetEnvIfNoCase User-Agent "^Telesoft" bad_bot
  182. SetEnvIfNoCase User-Agent "^TurnitinBot/1.5" bad_bot
  183. SetEnvIfNoCase User-Agent "^The.Intraformant" bad_bot
  184. SetEnvIfNoCase User-Agent "^TheNomad" bad_bot
  185. SetEnvIfNoCase User-Agent "^TightTwatBot" bad_bot
  186. SetEnvIfNoCase User-Agent "^Titan" bad_bot
  187. SetEnvIfNoCase User-Agent "^True_Robot" bad_bot
  188. SetEnvIfNoCase User-Agent "^turingos" bad_bot
  189. SetEnvIfNoCase User-Agent "^TurnitinBot" bad_bot
  190. SetEnvIfNoCase User-Agent "^URLy.Warning" bad_bot
  191. SetEnvIfNoCase User-Agent "^Vacuum" bad_bot
  192. SetEnvIfNoCase User-Agent "^VCI" bad_bot
  193. SetEnvIfNoCase User-Agent "^VoidEYE" bad_bot
  194. SetEnvIfNoCase User-Agent "^Web Image Collector" bad_bot
  195. SetEnvIfNoCase User-Agent "^Web Sucker" bad_bot
  196. SetEnvIfNoCase User-Agent "^WebAuto" bad_bot
  197. SetEnvIfNoCase User-Agent "^WebBandit" bad_bot
  198. SetEnvIfNoCase User-Agent "^Webclipping.com" bad_bot
  199. SetEnvIfNoCase User-Agent "^WebCopier" bad_bot
  200. SetEnvIfNoCase User-Agent "^WebEMailExtrac.*" bad_bot
  201. SetEnvIfNoCase User-Agent "^WebEnhancer" bad_bot
  202. SetEnvIfNoCase User-Agent "^WebFetch" bad_bot
  203. SetEnvIfNoCase User-Agent "^WebGo IS" bad_bot
  204. SetEnvIfNoCase User-Agent "^Web.Image.Collector" bad_bot
  205. SetEnvIfNoCase User-Agent "^WebLeacher" bad_bot
  206. S
#2 16 декабря 2016 в 23:10
Baidubot вроде полезный, в Китае тоже люди есть))
ахрефс и мажестик я бы тоже оставил, если пользуетесь онлайн-сервисами анализа сайта. Они обычно данные именно с этих сайтов берут.
Яндекс и Гуглбот тоже, в принципе, нагрузку создают!)
В общем, этот список нужно отдать на проверку специалистам.
#3 17 декабря 2016 в 08:17
vps не пробовали взять?
#4 17 декабря 2016 в 10:11

Baidubot вроде полезный, в Китае тоже люди есть))
ахрефс и мажестик я бы тоже оставил, если пользуетесь онлайн-сервисами анализа сайта. Они обычно данные именно с этих сайтов берут.
Яндекс и Гуглбот тоже, в принципе, нагрузку создают!)

@amigo
Гуглобото и яндекс бота и маил бота в этом списке нет, а те сервисы, что я пользуюсь они и так работают, но не спорю в списке могут быть полезные боты для кого-то.

vps не пробовали взять?

Петрмаг
А зачем, когда есть свой домашний, я уже лет 6 на домашних серваках живу и вполне хорошо, нагрузки тестил, дак 3000+ человек одновременно заходящий первый раз держит, а если понадобится куплю сервер помощьнее или облако сделаю =))
#5 17 декабря 2016 в 10:54

А зачем, когда есть свой домашний, я уже лет 6 на домашних серваках живу и вполне хорошо,

SALIK
И сколько за электричество выходит? Скока сервак наматывает?
#6 17 декабря 2016 в 11:14
Если сайт тормозит из за ботов — увеличивайте ресурсы хостинга или впс. И всё. Так как это прямой сигнал, что небольшая нагрузка от посетителей точно также положит сайт.
#7 17 декабря 2016 в 11:27

И сколько за электричество выходит? Скока сервак наматывает?

Capitan
Точно не считал, но он окупает всю квартплату за квартиру :D

Если сайт тормозит из за ботов — увеличивайте ресурсы хостинга или впс. И всё. Так как это прямой сигнал, что небольшая нагрузка от посетителей точно также положит сайт.

letsgo
Ну не совсем так, к примеру пользователь заходит и не делает пару сотней или тысяч запросов за короткий промежуток времени, вот кстати статейка на эту тему, где как раз все расписано и от куда я взял большую часть списка "плохих ботов"
#8 17 декабря 2016 в 12:10

Ну не совсем так, к примеру пользователь заходит и не делает пару сотней или тысяч запросов за короткий промежуток времени, вот кстати статейка на эту тему, где как раз все расписано и от куда я взял большую часть списка "плохих ботов"

SALIK

Это тема примерно 2007 — 2011 годов. Когда цены на ресурсы хостингов были дороже и боты были проблемой. В наше время, это не проблема. Если покопаетесь в источниках, то увидите, что писали об этом как раз таки годов 5-7 назад, далее кто нибудь поднимает тему, но особо это не суть.

Если пара тысяч запросов ложит ваш сайт — что делать? Надо увеличить ресурсы.
#9 17 декабря 2016 в 12:31
Если сайт по непонятным причинам начал жутко тормозить — то вместо метода тыка стоит смотреть логи.
Думаю, беглый просмотр отчета AWStats сделал бы вступительную историю гораздо короче.
#10 17 декабря 2016 в 19:57

Если сайт по непонятным причинам начал жутко тормозить — то вместо метода тыка стоит смотреть логи.
Думаю, беглый просмотр отчета AWStats сделал бы вступительную историю гораздо короче.

Sonat
Спасибо, поставил AWStats хороший инструмент))
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.