
Pro AV
+35
Репутация
186
Рейтинг
Хорошо, просто уточню. Если этот страшный GET запрос поступит но не будет исполняться (обрабатываться), это решит проблему? или проблема остаётся?
Что-то я совсем запутался, я пытался решить задачу по невыполнению перехода по редиректу, или попытки взлома. А оказывается надо просто запретить кому-то обращаться к вашему сайту.
Да, но тогда при чем тут instantCMS? Тогда проблема не в оформлении ссылки через редирект, а в том, что к сайту слишком много обращений.
Я конечно извиняюсь, но если GET запрос поступает на сервер и никак не обрабатывается, зачем на такой запрос обращать внимания.
Не верно, отключите вы компонент, удалите ли вы его, GET запросы к серверу будут продолжать идти, рубить их надо на уровне сервера
Как такое может быть? Скорее всего у вас на сервере работает сохранённая в cache версия сайта. Если на сайте физически нет компонента "redirect" который выполняет переход по ссылке, и вообще никаких скриптов нет, то и исполнять конструкцию "/redirect?url=http" просто нечему, ничего не произойдёт. Значит где-то лежит копия сайта, которая и живёт своей отдельной жизнью )). Вам её найти надо и что-то с ней сделать.
Не поможет, я полностью скрипт сайта удалял, оставлял пустую доменную папку, а редиректы шли! Единственная разница, что при этом в редиректах отсутствовали ссылки на статьи.
Или я вас неправильно понял? и вы говорите о том, что на ваш сервер при удалённых скриптах всё равно поступают запросы типа "/redirect?url=http://кокойто_гс"?
Про "ссылочную массу" так всё и есть, весь этот мусор индексируется, очень печально.
Наверно могут, поэтому скорее всего у vikont мой код не сработал, но в моём случае большинство редиректов идёт не напрямую "источник->мой_сайт->целевой_сайт" а через цепочку, примерно так "источник->ещё_сайт->мой_сайт->целевой_сайт", и у меня HTTP_REFERER моего сервера отслеживается.
То есть HTTP_REFERER они пока генерировать не научились?
vikont попробуйте отсечь вообще все редиректы:
if(strpos($_SERVER['REQUEST_URI'], '/redirect?url=http') !== false) { return;}
Так думаю точно хулиганы не пролезут, но есть минус — компонент "redirect" у вас на сайте вообще работать не будет.
Вчера вечером снова напали на меня эти редиречики, да так что сайт лёг намертво, ничего не помогало, пришлось в файл index.php до включения всех функций сайта вставить вот такой код, вдруг кому-то пригодится.
// боремся с редиректами
// в корне сайта, в самом начале файла index.php вставляем:
if(strpos($_SERVER['REQUEST_URI'], '/redirect?url=http') !== false)
{
$is_access = 0; // нет доступа
if(!empty($_SERVER['HTTP_REFERER'])){
if(strpos($_SERVER['HTTP_REFERER'], 'http://'.$_SERVER['HTTP_HOST']) === 0)
{$is_access = 1;} // есть доступ
if(strpos($_SERVER['HTTP_REFERER'], 'https://'.$_SERVER['HTTP_HOST']) === 0)
{$is_access = 1;} // есть доступ
}
if($is_access != 1){
echo 'Переход недоступен '.$_SERVER['REQUEST_URI'];
return; // дальше не выполняем
}
}
//-----------------------------------
/**
* Константа, по которой можно отследить текущий тип запуска CMS
*/
// дальше код cms…
// боремся с редиректами
// в корне сайта, в самом начале файла index.php вставляем:
if(strpos($_SERVER['REQUEST_URI'], '/redirect?url=http') !== false)
{
$is_access = 0; // нет доступа
if(!empty($_SERVER['HTTP_REFERER'])){
if(strpos($_SERVER['HTTP_REFERER'], 'http://'.$_SERVER['HTTP_HOST']) === 0)
{$is_access = 1;} // есть доступ
if(strpos($_SERVER['HTTP_REFERER'], 'https://'.$_SERVER['HTTP_HOST']) === 0)
{$is_access = 1;} // есть доступ
}
if($is_access != 1){
echo 'Переход недоступен '.$_SERVER['REQUEST_URI'];
return; // дальше не выполняем
}
}
//-----------------------------------
/**
* Константа, по которой можно отследить текущий тип запуска CMS
*/
// дальше код cms…
Ваше решение к сожалению не помогло.Лично для себя нашёл ещё такое решение,
[/quote]
Попробуйте незарегистрированным пользователям, просто показывать страницу 404. так по идее не должно ресурсы кушать
if (!$this->cms_user->is_logged) { cmsCore::error404(); }
Я Fuze писал насчёт этой проблемы с редиректом, нагрузка на сайт была 100%, он мне ответил, чтобы я выключил компонент "редирект" в админке.
Я компонент совсем выключать не стал поставил галку "Проверять HTTP referer", нагрузка на сайт упала до 60%.
Лично для себя нашёл ещё такое решение, прописал в файле "./system/controllers/redirect/frontend.php", что редиректом могут пользоваться только зарегистрованные пользователи, после этого нагрузка пропала.
Я компонент совсем выключать не стал поставил галку "Проверять HTTP referer", нагрузка на сайт упала до 60%.
Лично для себя нашёл ещё такое решение, прописал в файле "./system/controllers/redirect/frontend.php", что редиректом могут пользоваться только зарегистрованные пользователи, после этого нагрузка пропала.
if (!$this->cms_user->is_logged) { cmsUser::addSessionMessage('<p style="font-size:26px;">Для перехода по ссылке требуется <a href="/auth/login">регистрация</a></p>', 'error'); $url = ''; $is_domain_banned = true; $is_domain_in_black_list = true; //cmsUser::goLogin(); }
Число объявлений сейчас на самом деле не надо, а фильтр лучше сразу раскрыть.
4455.kz/ — кнопка "Наверх", скачущая по середине экрана раздражает.
На странице с объявлением, заголовок "Фотография:" я бы убрал.
4455.kz/ — кнопка "Наверх", скачущая по середине экрана раздражает.
На странице с объявлением, заголовок "Фотография:" я бы убрал.
Про W1 отзывы читал — они были просто ужасные. Подключил Walletone (W1) три месяца работаю вообще без проблем, она и на(в) Украине работает и в России. У меня большинство российских пользователей через неё платят, Приват банк там тоже есть.
./upload (сделать доступной для записи)
Цветовая схема — жесть. Шаблон поменять однозначно…