[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблем нагрузки сервера из за лишних параметров.
alex-007
Добрый день.

Мне на днях провайдер хостинга написал что мой сайт заблокирован из за того что на него поступают запросы которые долго обрабатываются сервером.

Вот пример:

/?s=%d0%b1%d1%83%d1%85%d1%83%d1%87%d0%b5%d1%82&topic=223 1,18781

Что я хочу сделать это запретить какое либо добавление в урл лишней информации.
Если такова добавляется то ее удалять и перенаправлять на главную страницу сайта.

урлы моего сайта выглядат так.

http://sitename.ru/pages/page1
http://sitename.ru/pages/page2

не хотелось бы что бы кто либо мог добавлять параметры типа: /?

Как это можно сделать? Есть какой то простой способ?




Спустя 9 минут, 49 секунд (19.09.2009 - 13:44) FatCat написал(а):
Чем Вам слово "бухучет" в строке запроса не угодило?
Опять же, если такая урла проиндексируется в поисковке, можете получить дополнительный целевой трафик по этой тематике.
ИМХО, очень полезный запрос.
А вот сделать грамотную разборку входящего запроса - необходимо.

Спустя 6 минут, 7 секунд (19.09.2009 - 13:50) alex-007 написал(а):
Целевик? smile.gif Мы услуги такси предлагаем..


Код
Мы были вынуждены заблокировать доступ к Вашему сайту по протоколу HTTP,
поскольку данные запросы негативно сказывались на работе других ресурсов.
Пожалуйста, примите все необходимые меры по исправлению данной ситуации и
сообщите об этом нам. Иллюстрация нагрузки:

/?s=%d0%b1%d1%83%d1%85%d1%83%d1%87%d0%b5%d1%82&topic=223 1,18781
..
...
.....
......
..........

Число отражает используемое процессорное время.
В нормальном режиме работы на один запрос к странице сайта (скрипту) обычно
затрачивается в среднем от 0.01 до 0.1 секунд процессорного времени. Вам
необходимо найти способ оптимизировать скрипты сайта таким образом, чтобы
они
потребляли меньше процессорного времени при выполнении указанных выше
запросов.


Вот суть письма. Что посоветуете сделать? Я сам не программист да и в штате сейчас таких sad.gif Может есть что то что бы я смог сделать чтобы выпутатся из ситуации.. Весь трафф идет мимо sad.gif sad.gif

Спустя 8 минут, 37 секунд (19.09.2009 - 13:58) FatCat написал(а):
Цитата (alex-007 @ 19.09.2009 - 14:50)
Что посоветуете сделать?

Исполняемый файл index.php?
В нем и надо смотреть, почему он так долго обрабатывает $_GET['s']... В нем, или в инклайде или классе, который обрабатывает этот параметр.
У большинства форумов в этот параметр пишется сессия; поэтому могу предположить, что у Вас какие-то беды беды с сессиями... Вполне возможно, что на проверке стоит нерациональная проверочная регулярка, которая и жрет ресурсы.

Спустя 25 минут, 11 секунд (19.09.2009 - 14:24) alex-007 написал(а):
Pagination.php
http://pastebin.com/d2e5c1b88

nodes_controller.php
http://pastebin.com/d782f5461

ocean_sanitize.php
http://pastebin.com/d3db5e47d


Вот может что то в этих фаилах есть?
те пофакту что то тормозит проверку $_GET['s'] ? или же просто можно поставить более короткий timeout что бы страничка умерала по истичению данного времени. if (прошло секунда) then (redirect='index.php') ?

ЗЫ: /?s вообще не относится никак к структуре урлов сайта. никогда и нигде такого урла не встречал на моем домене. Может это атака?

Спустя 20 минут, 18 секунд (19.09.2009 - 14:44) hara_ написал(а):
Вы прям так точно уверены что нигде нет параметров s и topic или только s ?
потому что в приведённых вами файлах нет ничего сверхестественного.

а вот сочетание параметров запроса похоже на поиск по форуму в определённом топике,
и конечно если у вас база большая то вот вам результат.

Спустя 19 минут, 37 секунд (19.09.2009 - 15:03) alex-007 написал(а):
Нет база очень маленькая. С трудом насчитавает 20 страничек (записей). Форумов нет. есть только форма заказа такси, может там и передаются такие параметры...

Вся суть цмс заключается только в добавлении странички и ее удалении...

Может какойнибуть exclude в htaccess написать? Что посоветуете?

Спустя 1 час, 5 минут, 1 секунда (19.09.2009 - 16:08) hara_ написал(а):
вы проверьте передаются или не передаются (форма врятли будет передаваться методом $_GET,
т.е. скорее всего из за формы таких параметров не получится)

ну и если точно нигде не используется то попробуйте нагло вырезать этот параметр из запроса
ну то есть в файле который там где то в начале подключается
unset($_GET['s']);
и потом посмотрите что у вас не будет работать ))

а так как если параметр нигде не используется то и тормозить он ничего не должен
то вообще то попросите кого нибудь за отдельную плату всё же разобраться с этим.

если нет, то:
что вообще возвращает страница с таким параметром то?
отличается от простой страницы?
вот таким методом и ищите.. сначала где, а потом уже почему

Спустя 10 минут, 12 секунд (19.09.2009 - 16:19) FatCat написал(а):
Цитата (hara_ @ 19.09.2009 - 17:08)
вот таким методом и ищите..

Я бы, как вариант, урезал бы на локалке таймлимит, и запустил бы скрипт. А в сообщении об ошибке будет файл и строка, на которой затык. rolleyes.gif

Спустя 1 час, 37 минут, 31 секунда (19.09.2009 - 17:56) alex-007 написал(а):
Код
Я бы, как вариант, урезал бы на локалке таймлимит, и запустил бы скрипт. А в сообщении об ошибке будет файл и строка, на которой затык. rolleyes.gif

Так и надо попробовать.


Код
если нет, то:
что вообще возвращает страница с таким параметром то?
отличается от простой страницы?

Нет параметр приходит с другого сайта. Те кто то ставит не примую ссылку на наш сайт. не site.ru a site.ru/?s=fkerjkejkf

поэтому и передается кривой урл, вот от куда все проблемы. А почему он влияет на скрипт плохо, не понятно.
Отвечая на вопрос, когда урл site.ru/?s=GOGO это равносильно что и site.ru/ или site.ru/index.php
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.