- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброго дня уважаемые.
Решил несколько замаскироваться, в связи с чем вспомнил баянную тему про определение реферрера и в случае, если посетитель приходит не с поисковой машины - выдачу 404 страницы.
Помню что такой скриптик на ПХП проскакивал или тут или на Нулледе, но к сожалению не нашел. Может у кого завалялся?
P.S. Точнее интересует его часть, которая отдаёт 404. Просто не знаю как это корректно делается - то ли сгенерировать страничку, то ли хедер надо отослать определенный браузеру. Само определение реферрера то задача банальная.
if($_SERVER['HTTP_REFERER'] == 'название бота')
{
header("HTTP/1.1 404");
die('Бот, однако.');
}
скрипт фильтрации поискового трафа на яваскрипт
if($_SERVER['HTTP_REFERER'] == 'название бота')
{
header("HTTP/1.1 404");
die('Бот, однако.');
}
$ref = $_SERVER['HTTP_REFERER'];
if(!strpos($ref, 'имя_се1') && !strpos($ref, 'имя_се2') и тд по необходимости) {
// вот тогда не с поисковика :)
header("HTTP/1.1 404");
die();
}
// дальше делай что надо
Регулярные выражения рулят!
if (!preg_match('/yandex|rambler|msn|google/i', $_SERVER['HTTP_REFERER'])) {
// вот тогда не с поисковика
header("HTTP/1.1 404");
die();
}
ЧерныйKот, регулярки работают медленнее, нежели strstr и тем более strpos.
ЧерныйKот, регулярки работают медленнее, нежели strstr и тем более strpos.
Т.к. в данном случаее сложность регулярного выражения небольшая, а длина субъекта не более 255 символов... разность в скорости на столько незначительна, что ей можно пренебречь.
Тогда уж вместо strstr и strpos следует использовать функции stristr и stripos, для того чтобы не учитывать регистр символов.
Т.к. в данном случаее сложность регулярного выражения небольшая, а длина субъекта не более 255 символов... разность в скорости на столько незначительна, что ей можно пренебречь.
Тогда уж вместо strstr и strpos следует использовать функции stristr и stripos, для того чтобы не учитывать регистр символов.
1) помножьте на посещаемость. Да и смысл усложнять регулярками, если есть более простые способы.
2) у меня например на хостинге НЕ работают stristr и stripos. Но еще не видел, чтобы $_SERVER['HTTP_REFERER'] отдавался в разных регистрах. Он вроде как всегда в нижнем ;)