G|Translate: English EN Français FR Deutsch DE Italiano IT Русский RU Español ES

Защищаем скрипт PHP от прямого вызова

В папке плагинов WordPress лежит замечательный файл index.php

Защищаем скрипт PHP от прямого вызова

«Молчание — золото»…

Это как раз для любителей вызвать папку «/wp-content/plugins/» напрямую.

В скриптах WordPress проверяется служебная переменная ABSPATH перед запуском

if (!defined ('ABSPATH')) exit;

При попытке выполнить скрипт вне пространства WP — любопытный сразу идет на выход

А как быть с самодельным скриптом ,который запускается с Вашего сайта, но не из WP?

Блокируем прямой запуск скрипта

Т.к Ваш скрипт запускается с какой-либо страницы Вашего сайта — то там должен быть рефер  с именем этой страницы.

При прямом запуске — рефер будет пустой.

$backurl = $_SERVER['HTTP_REFERER'];
if (empty ($backurl)) { 
   include 'index.php';  
   exit;
}

Для начала очевидное:

  1. Сделаем свой index.php
  2. Будем показывать его любопытным при прямом запуске

Вариант файла index.php

<?php
header($_SERVER['SERVER_PROTOCOL']." 404 Not Found");
echo 'Silence is golden';
exit;
?>

при показе файла дополнительно сообщаем боту, что ошибка 404 «файл не найден» — для разнообразия

Но это еще не все. Боты научились подделывать рефер (что бы их так просто не выгоняли), там может быть:

  • или Ваш домен mysite.ru с ошибкой вида www.mysite.ru
  • или URL адрес Вашего скрипта вида http://mysite.ru/test.php

С последним вариантом бот бился 6 часов с интервалом 1 сек… Подбирая разные варианты запуска php.

Атака шла с IP v6 — так что версия fail2ban 0.9 ничего тут не смогла сделать (поддержка IP6 только с версии 10.0).

Читаем статью

Настраиваем fail2ban под свои задачи

Добавим дополнительные проверки

$backurl = $_SERVER['HTTP_REFERER'];
$domen_link = ((!empty($_SERVER['HTTPS'])) ? 'https' : 'http') . '://' . $domen;
//----------
if (empty ($backurl)) { 
   include 'index.php'; 
   exit;
}
if (mb_strpos($backurl, $domen_link)=== FALSE) { 
   include 'index.php'; 
   exit;
}
if (mb_strpos($backurl, '.php') > 0) { 
   include 'index.php'; // 
   exit;
}

где $domen_link — домен Вашего сайта с протоколом и поищем:

  • или отсутствие правильного домена в строке рефера (откуда был вызван скрипт)
  • или символы ‘.php’ в рефере

Если хотя бы одна из трех ловушек сработает — бот получит страницу index.php и 404 ошибку.

Бинго!

Блокируем запуск скрипта с PHP в рефере

ВАЖНО: «символы ‘.php’ в рефере» ! 

Иногда вредные боты подменяют рефер и там вписывают название Вашего скрипта вида https://mysite.ru/script.php

Т.е. как бы скрипт запускает сам себя :(

А у Вас например, скрипт script.php после выполнения перезагружает страницу, откуда он был запущен https://mysite.ru

А там теперь, в рефере (бот подделал) — название Вашего же скрипта. Что произойдет? После захода такого бота сервер уйдет в цикличный вызов скрипта и ему будет нехорошо…

P.S.

Если разработчики ботов еще что придумают — допишем ловушки :)


Как заработать на рекламе на информационном сайте

Собственно никак :)

Как заработать на рекламе на информационном сайте

Есть сервисы Яндекс РСЯ и Google Adsense.

Посмотрим внимательно:

  • Яндекс принимает в свою сеть сайты с 10 000 визитов  день (Россия)
  • Google принимает всех

Цифры по Google Adsense — в среднем с сайта 500 визитов в день (15 000 в месяц) Вы получите порядка 50 долл. Чтобы хотя бы получить 500 долл. за месяц — у Вас должен быть сайт с уровнем визитов 150 000 в месяц.

Или, например,  300 000 визитов в месяц — как хочет Яндекс (10 000 * 30 дн).

Что для информационного сайта силами одного вебмастера малореально. И не забываем, что у многих установлен AdBlock Plus, который достаточно хорошо отрезает рекламные модули.

Этого хватит на оплату домена, хостинг VPS и немного на мороженое…

Хостинг VPS нужно покупать нормальный, что бы он мог обеспечить отдачу контента такому количеству желающих. В двух словах — т.к. желающих много — Вам нужна многопоточность, что обычный дешевый хостер не может обеспечить.

Читаем статью

Хостинг VPS

Особенности работы с Google Adsense

Проходим регистрацию, добавляем свой сайт, добавляем на него код — ждем подтверждения, что с сайтом система может работать.

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

Как заработать на рекламе на информационном сайте

Переводим на русский «подбирать лучшие места»:

  • в текст статьи втыкается 3-5 рекламных блоков
  • в боковые панели сайта добавляется 2-3 блока
  • и вишенка — при клике по пункту меню появляется всплывающая реклама

В результате сайтом в принципе нельзя пользоваться. Забавно.

Лучше сделать свои медийные блоки и вручную их разместить на сайте:

  • перед контентом
  • после контента

Как заработать на рекламе на информационном сайте

Да, кликов будет меньше — но по крайней мере сайт будет выглядеть нормально.

ВАЖНО

Просто вставить свой созданный медийный блок на страницы AMP не сможете.

Это легко только для автоматизированных страниц. Для вставки самостоятельного медийного блока Google Adsense необходимо корректировать код. Конечно — в справке Google Adsense написано «Разместите этот фрагмент кода на AMP там, где должно показываться объявление«. А как разместить — не написано.

Читаем статью

Грамотная и максимальная монетизация AMP страниц

А еще вот так бывает после старта рекламы (т.е. уже после проверки, что сайт готов)

Как заработать на рекламе на информационном сайте

Робот считает, что на Вашем сайте бесполезный контент. При этом сам же Гугль нормально показывает сайт в выдаче….

Роботы правят миром :(

Статистика блокировок рекламы

Все помнят про существование AdBlock

Можно оценить результаты (и других блокировщиков рекламы тоже). Как пример:

  • посещаемость (просмотры страниц) сайта 10 000 в месяц
  • блоков рекламы на странице 8
  • показов блоков рекламы 30 000
  • просмотров блоков рекламы 15 000 (т.е. на видимой части экрана)

 

Легко поделить одно на другое

  • Вместо 80 000 (8 блоков на страницу) показов рекламных блоков мы и имеем 30 000, т.е. 50 0000 / 80 000 = 62% выдачи рекламы блокировщики рекламы отсекают
  • и посетитель видит в среднем 50% от показанной рекламы — т.к. часть рекламы расположена ниже и пользователь не использовал скроллинг

Т.е. по итогу посетитель страницы видит 15% от размещенной рекламы на сайте. Реально — еще меньше, так как блокировщики блокируют частично еще и счетчики Google и Яндекс. Ибо слишком много собирается информации о пользователе вместо простого подсчета страниц.

Обратная сторона — на некоторых сайтах начинают вывешивать рекламы больше, чем полезного контента. И без блокировщика на сайте ничего почитать нельзя…

Почему не получится использовать свою рекламу на сайте

Не получится — низкая релевантность объявлений. Что бы был клик со стороны посетителя:

  • объявление должно показываться в той же категории, что и текст (или по той же теме)
  • только поисковая система всё знает о посетителе (что он смотрел ранее, его интересы и прочее)

Если Вы делаете свою рекламу — то количество кликов будет на уровне 1 промилле (1/1000). Если рекламная система дает объявление — то количество кликов будет на уровне 1% (1/100).

Хоть что-то.

И вторая причина. Сейчас поисковые системы превратились в магазин по продаже рекламы. Вот пример — на поисковый запрос все позиции  на видимой части первого экрана — это реклама, а не результат поиска.

Как заработать на рекламе на информационном сайте

Поиска нет вообще :(

При попытках на своем сайте давать свою cdj. рекламу — Ваш сайт обрушат в поиске… Конкуренты не нужны.

Как заработать на рекламе на информационном сайте

Малополезный контент, избыток рекламы — почему вообще система поиска принимает такие решения за пользователей…

А рекламная система добавляет файл ads.txt, в котором есть информация — кто и как рекламирует.

Ads.txt — это текстовый файл, хранящийся в основной папке веб-сайта, который содержит список компаний, уполномоченных продавать рекламу на  сайте. IAB Tech Lab выпустила этот инструмент в мае 2017 года для решения проблемы мошенничества, подтверждая им подлинность рекламных мест.

Это официально. А по факту — это сигнал поисковым машинам, что используется именно их рекламный канал.

 


Роботы и боты не спят…

Пока  Вы думаете, как завлечь посетителей на сайт — боты там резвятся от души.

Роботы и боты не спят...

одни боты ломятся в админку (для сайта на WordPress). Их там правда не ждут — но ботам всё равно.

Любимые файлы WP для подборщиков:

  • wp-login.php
  • xmlrpc.php (для мобильного входа)

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

Роботы и боты не спят...

Вот это «empty message» — уже после очистки от спецсимволов. И какое упорство для 195.123.227.217 — с одного IP-адреса пытаться сделать инъекцию кода в поле формы.

Роботы и боты не спят...

И хорошо — есть еще тупые боты 5.188.84.115, которые заполняют скрытые поля «Honeypot» (бочка с медом) и получают заслуженный бан.

Роботы и боты не спят...

Да, интернет знает этого бота 5.188.84.115.

Обратите на временные интервалы — от пяти до 10 попыток в час. Это еще здесь нет логов ботов, которые всякую ахинею в адресной строке браузера набирают.

Скоро интернет придет к состоянию электронной почты — будет 90% ботов и 10% людей.

P.S.

Не просто так Dropbox резко усложнил капчу на вход в аккаунт.


Протокол http против https

Казалось бы, что тут может быть нового? Используйте https и будет Вас счастье.

Протокол http против https

Но чудеса встречаются на разных серверах…

Допустим у Вас есть проект в работе, он пока работает на http, сайт уже есть. И он открывается нормально по http.

Протокол http против https

Совершенно случайно Вы узнаете, что сайт открывается еще и по https, но:

  • там висит заглушка вместо сайта
  • никаких действий по подключению https Вы не предпринимали
  • сертификата SSL у Вас нет

А откуда Вы это случайно узнали?

А это поисковые роботы проверили https, выяснили, что сервер отвечает на запрос (с кодом 302 — временно перемещено), страница с html тэгами там есть = и сделали страницу-пустышку https главным зеркалом сайта.

Т.е. теперь пустышка — главное зеркало, а сам основной сайт по http выброшен из поиска (типа — не главное зеркало и в поиске больше не участвует).

Неожиданно :(

Смотрим, что отвечает сервер Яндекса

http = 200

Протокол http против https

https = 302

Протокол http против https

Упс…

Нужно это дело контролировать и принимать меры, что бы хотя бы возвращалась ошибка https=404

Протокол http против https

Только тогда глупый поисковый робот успокаивается и прекращает попытки сделать заглушку главным зеркалом.

P.S. Конечно понятно.

Программисты хотели сделать доброе дело, если есть ответа по https — давайте сделаем его главным зеркалом по умолчанию, поможем разработчику сайта.

Только никто не подумал, что бывают разные ситуации.


Вариант перелинковки страниц и статей блога на WordPress

Это волшебное слово «перелинковка».

Вариант перелинковки страниц и статей блога на WordPress

Помимо наличия ссылок с наиболее популярных страниц (установленных вручную) —  неплохо бы добавить автоматический вариант:

  • на странице после контента должен быть список дочерних страниц (или страниц похожей тематики) — повышает вероятность перехода посетителя
  • в статье после контента должен быть список статей этого же автора по этой же рубрике — повышает вероятность перехода посетителя
  • на каждой странице блога должен быть список наиболее популярных страниц (линк и счетчик)
  • на каждой странице блога должен быть список наиболее популярных статей (линк и счетчик)

 

Как это можно реализовать?

Можно для WordPress использовать следующие плагины:

Page-List — для организации списка страниц (добавляет шорт-код после контента)

Топ-10 — для показа счетчика по страницам и статьям (разместить  в боковой панели как виджет)

Вывод списка последних публикаций — добавляет список статей с фильтрацией по автору и рубрике


Основные параметры сайта

У Вас/Вашей компании есть сайт. Наивно думать, что теперь о Вас узнает весь мир.

Основные параметры сайта

Да, сайт видно с любой точки земного шара — но у Вас сайт-невидимка, никто про него чего не знает и найти не может.

По сравнению с началом Интернета сайтов стало очень много, точнее ОЧЕНЬ МНОГО. Раньше было достаточно выложить сайт в интернет -и через некоторое разумное время его уже хорошо видно в поиске, пошли посетители. Сейчас для продвижения сайта необходимы достаточно большие усилия целой команды. В одиночку это практически сделать невозможно — слишком разные знания нужны и банально не хватит времени. И очень много работает хороших команд с хорошими бюджетами.

Грубая оценка того, что необходимо делать для продвижения сайта и кто необходим.

Дизайнер — разработка дизайна сайта, недостаточно один раз нарисовать и сделать, постоянно надо что-то переделывать
Программист — собственно работает с кодом сайта
Специалист по SEO — постоянно отслеживает основные параметры сайта, проверяет соответствие требованиям поисковых систем, предлагает изменения, работает с ссылочной базой
Специалист по контекстной рекламе — занимается контекстной рекламой
Создатель текстов и новых страниц — пишет, собственно тексты для страниц, исходя из объема 1 новая страница в день
Специалист по продвижению в социальных сетях — обеспечивает продвижение в социальных сетях, ведет группы

Вот уже команда минимум из 6-ти сотрудников, их зарплата плюс контекстная реклама плюс реклама в социальных сетях = где-то под 1 млн. руб. в месяц выходит. Т.е. если Ваш бизнес на 100% в Интернете и Вы хотите получать клиентов с трафика с сайта — будьте готовы отдать 1 млн. руб. в месяц на продвижение. Да, можно часть работы отдать внешней фирме на аутсортинг — но в целом сумма затрат особо сильно не изменится. Вариант «мы сделали модный красивый сайт и сразу хотим получать с него клиентов» — не работает. И силами 1-2 сотрудников Вы сайт не вытащите на хорошую посещаемость.

Если Ваш бизнес работает в традиционных сферах — тогда проще, Вам нужен сайт-визитка (один раз сделать базовый функционал), что там были контакты и основная информация. И можно не заниматься продвижением — просто указывать сайт в своих рекламных материалах.

Рассмотрим основные показатели Вашего сайта.

Количество визитов с поиска (лучше через счетчик Гугль) — количество посетителей, которые зашли на Ваш сайт через поисковые системы. Именно не общее число визитов (там может быть и прямые заходы и реклама и соцсети), а именно с поиска. Это позволяет оценивать, как сайт виден из интернета. Счетчик Гугль хорошо дает разбиение, откуда пришли посетители.

— с поиска Яндекса

— с поиска Гугль

— с других поисковых машин

Средняя глубина просмотра (лучше через счетчик Гугль) — практически САМЫЙ ГЛАВНЫЙ параметр Вашего сайта. Например, Вы вложили денег в рекламу и число визитеров на сайте более 50 000 в месяц, вроде хорошо. А посмотрим количество просмотров (100 000) — вроде вообще отлично. Поделим одно на другое (100 000 / 50 000) и получим среднюю глубину просмотра в 2 (ДВЕ) страницы! Что это означает? Ваш сайт никому не интересен (или текстовая информация ни о чем, или навигация кривая), визитер переходит на страницу входа, ничего не понял, куда-то кликнул — И УШЕЛ. Фактически весь бюджет на продвижение сайта потрачен просто так, визитеры на сайт идут, но ничего там не смотрят. Т.е. пока не решен вопрос со средней глубиной просмотра (должна быть минимальна на уровне 5-7 страниц) — не имеет смысла вкладывать денег в раскрутку сайта, надо дорабатывать сам сайт.

Причем интересует не просто средняя глубина просмотра сайта (она ни о чем не говорит — там каша из разных данных), интересует глубина просмотра визитеров с поиска Яндекса и поиска Гугль. Если сайт не оптимизирован для мобильных устройств — с Гугль глубина просмотра будет меньше. Это связано с тем, что в настоящее время очень много ищут через Гугль именно с мобильных устройств (операционная система Adndroid), 6 страниц с поиска Яндекса и 4 страницы с поиска Гугль..

Основные параметры сайта

Тип операционной системы (лучше через счетчик Гугль) — как вариант замены отчета по устройствам, откуда был вход — с мобильного устройства или стационарного ПК. Если Вы видите, что большая часть заходов идет через Android — то нужно срочно оптимизировать сайт под мобильные устройства (оценка удобства для пользователя — глубина просмотра). Ниже скан отчета из Гугль с разбивкой по каналам (нас интересует organic — т.е. поиск) и по операционным системам.

Основные параметры сайта

Что мы видим из отчета? С поиском из настольных ПК все прекрасно — глубина просмотра более 7 страниц (последняя колонка). А вот для мобильных устройств ситуация хуже. Для Android / iOS глубина просмотра почти в два раза меньше, скорее всего неудобно работать с сайтом на небольших экранах (например, не видна часть ссылок в основном меню) — а ведь пользователи этих мобильных устройств наиболее платежеспособны :)

Число визитёров с рекламы — это может быть как и классическая контекстная реклама (Директ и Эдвордств соответственно), так и размещение платных ссылок на других сайтах (тогда в отчетах эти цифры будут в разделе referal).

Число визитёров с социальных сетей — что бы получить разумные цифры, как минимум должны быть настроены группы в соцсетях и организована выкладка информации с сайта в социальные сети. Если это поручить роботу (автоматический кроспостинг в сети хотя бы раз в день) — Ваш сайт дополнительно получит 365 ссылок с каждой соцети за год. Подробнее здесь https://seotable.ru/indeksirovanie-sajta.htm

Прямой вход — это визитёры, которые заходят по адресу сайта (набирая его в адресной строке или из закладок)

Итого четыре основных канала входа на сайт:

— с поиска

— с рекламы

— с соцсетей

— прямой вход

 


X

    Please prove you are human by selecting the Plane.