Откуда ты, странник? Определяем с помощью php из какой поисковой системы пришел посетитель сайта.

О блоге Добросайт

При настройке небольшой сетки из трех сайтов у меня возникла необходимость, чтобы на сайтах происходили разные сценарии для посетителей из Гугл и для посетителей из Яндекс. Вкратце объясню эти сценарии. Условно обозначим основной сайт номером #1, а два дополнительных сайта #2 и #3 соответственно.

Откуда пришел посетитель. Рабочий код на php
  • Если посетитель пришел из Google, то сайт #3 должен сделать переадресацию на сайт #2. А сайт #2 должен сделать переадресацию на сайт #1. Как делать переадресацию с помощью php я уже ранее описывал здесь. Сама переадресация происходит за доли секунды. Поэтому посетитель попадая на сайт #3 или #2 из Google тут же перебрасывается на сайт #1.
  • Если посетитель пришел не из Яндекс и не из Google (зашел на сайт с другого сайта или напрямую, в общем - не через поиск), то сценарий такой же, как если посетитель пришел из Google.
  • Если посетитель пришел из Яндекс, то сайт #3 и #2 должны показывать клиенту обычные страницы, в которых вшиты сквозные ссылки на сайт #1.

Немного погуглив я принял решение, что буду делать это на php. Поскольку сайты работают на MOD-X и Wordpress (php язык программирования, на котором написаны эти CMS).

Также это можно было сделать на JavaScript (js).

И возможно с помощью файла .htaccess, который обычно лежит в корне сайта отвечает за локальное управление настройками веб сервера.

Далее рабочий код на php, который и будет определять откуда появился посетитель на нашем сайте. Будем использовать функцию.

	
	<?php 	  
		//откуда пришел клиент
	  function  UserFromSearch() {
		//массив с перечеслением интересующих поисковых систем
	  $crawlerList=array("yandex.","google.","yahoo.");
		//В элементе $_SERVER['HTTP_REFERER'] содержится адрес страницы, 
		//с которой посетитель пришёл на данную страницу.
		//если $_SERVER['HTTP_REFERER'] была установлена и не равна NULL 
	  if (isset($_SERVER['HTTP_REFERER'])) {
	 //Разбираем значение URL ( $_SERVER['HTTP_REFERER'] )
	 $referringPage = parse_url( $_SERVER['HTTP_REFERER'] );
		//если $referringPage['host'] была установлена и не равна NULL 
	if (isset( $referringPage['host'] )) {
		//присваиваем $referringHost значение $referringPage['host']
	$referringHost = $referringPage['host']; 
	//перебираем все варианты поисковиков из массива и ищем совпадение 
	foreach ($crawlerList as $crawler) {   
    if (strpos (strtolower ($referringHost),$crawler) !== FALSE ) { 
    //если совпадение есть, возвращаем название поисковика
	return $crawler; 
	       }
	      }
         }
        }
      return FALSE; 
    }  
    ?> 
	

То есть, наша функция проверяет $_SERVER['HTTP_REFERER'] - в нем хранится значение URL с которого пришел посетитель. Мы разбиваем URL с помощью parse_url и берем оттуда элемент "host". Если значение "host" совпадет с каким-то из заранее указанных нами в массиве значений, то функция вернет это значение. И таким образом мы поймем, из какого поисковика пришел посетитель.

Вот такая классная функция получилась. Если немного поразмыслить и переписать ее, то можно получать название любого источника, откуда пришел клиента. Но задача нашей функции именно определять поисковики. Скачать код функции можно здесь

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

	<?php
 	$user_from = UserFromSearch();
	if ($user_from && $user_from == "google"){
	echo "Вы пришли из google";	
	} 	 
      ?>   	

В дополнении, хочется отметить, что в суперглобальном массиве $_SERVER содержится множество важных и полезных элементов. Чтобы посмотреть их можно выполнить код:

	  <?php
 	   echo  "<pre>";
	  print_r  ($_SERVER);
	 echo  "</pre>";	
      ?>   	

Если прямо сейчас хотите посмотреть как срабатывает эта функция, то это можно сделать прямо на Добросайте. Просто наберите в поиске Google Добросайт и перейдите на dobrosayt.ru. Вы увидите на главной в верхнем правом углу добросайта иконку с вопросом. Нажмите на иконку и увидите информацию, откуда вы пришли. То же самое можно проделать и с Яндекса. Наберите добросайт в яндекс, перейдите на сайт, нажмите на значок вопроса в правом верхнем углу сайта.

На этом статья подходит к логическому окончанию. Спасибо за внимание! На связи был Радмир - "Добросайт".



Для чего этот блог.

Доброго времени суток, дамы и господа! Вы находитесь на блоге о ведении бизнеса в сети интернет, о сайтах, рекламе, маркетинге и различных способах заработка онлайн.

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

Мы будем разбирать интересные случаи, различные задачи по сайтам от элементарных до сложных, всевозможные "фишечки".

Если у вас есть тема статьи, которую хотелось бы разобрать, то напишите об этом здесь

×

Предложите тему поста для блога

Возможно она станет темой следующего поста.

×

Обсудить проект

Опишите ваш проект (сайт) мы проанализируем информацию и свяжемся с вами в ближайшее время.

Радмир.
E-mail: info@dobrosayt.ru
×

Заявка на создание сайта

Радмир.
E-mail: info@dobrosayt.ru
×

Заказ консультации на создание сайта

Радмир.
E-mail: info@dobrosayt.ru
×

Мои первые сайт, реклама, клиенты.

Заявка на онлайн курс

Консультация. Радмир.
E-mail: info@dobrosayt.ru
×

Политика в отношении обработки персональных данных

1. Общие положения

Настоящая политика обработки персональных данных составлена в соответствии с требованиями Федерального закона от 27.07.2006. №152-ФЗ «О персональных данных» и определяет порядок обработки персональных данных и меры по обеспечению безопасности персональных данных Dobrosayt(далее – Оператор).

  1. Оператор ставит своей важнейшей целью и условием осуществления своей деятельности соблюдение прав и свобод человека и гражданина при обработке его персональных данных, в том числе защиты прав на неприкосновенность частной жизни, личную и семейную тайну.
  2. Настоящая политика Оператора в отношении обработки персональных данных (далее – Политика) применяется ко всей информации, которую Оператор может получить о посетителях веб-сайта https://dobrosayt.ru/

2. Основные понятия, используемые в Политике

  1. Автоматизированная обработка персональных данных – обработка персональных данных с помощью средств вычислительной техники;
  2. Блокирование персональных данных – временное прекращение обработки персональных данных (за исключением случаев, если обработка необходима для уточнения персональных данных);
  3. Веб-сайт – совокупность графических и информационных материалов, а также программ для ЭВМ и баз данных, обеспечивающих их доступность в сети интернет по сетевому адресу https://dobrosayt.ru
  4. Информационная система персональных данных — совокупность содержащихся в базах данных персональных данных, и обеспечивающих их обработку информационных технологий и технических средств;
  5. Обезличивание персональных данных — действия, в результате которых невозможно определить без использования дополнительной информации принадлежность персональных данных конкретному Пользователю или иному субъекту персональных данных;
  6. Обработка персональных данных – любое действие (операция) или совокупность действий (операций), совершаемых с использованием средств автоматизации или без использования таких средств с персональными данными, включая сбор, запись, систематизацию, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передачу (распространение, предоставление, доступ), обезличивание, блокирование, удаление, уничтожение персональных данных;
  7. Оператор – государственный орган, муниципальный орган, юридическое или физическое лицо, самостоятельно или совместно с другими лицами организующие и (или) осуществляющие обработку персональных данных, а также определяющие цели обработки персональных данных, состав персональных данных, подлежащих обработке, действия (операции), совершаемые с персональными данными;
  8. Персональные данные – любая информация, относящаяся прямо или косвенно к определенному или определяемому Пользователю веб-сайта https://dobrosayt.ru
  9. Пользователь – любой посетитель веб-сайта https://dobrosayt.ru
  10. Предоставление персональных данных – действия, направленные на раскрытие персональных данных определенному лицу или определенному кругу лиц;
  11. Распространение персональных данных – любые действия, направленные на раскрытие персональных данных неопределенному кругу лиц (передача персональных данных) или на ознакомление с персональными данными неограниченного круга лиц, в том числе обнародование персональных данных в средствах массовой информации, размещение в информационно-телекоммуникационных сетях или предоставление доступа к персональным данным каким-либо иным способом;
  12. Трансграничная передача персональных данных – передача персональных данных на территорию иностранного государства органу власти иностранного государства, иностранному физическому или иностранному юридическому лицу;
  13. Уничтожение персональных данных – любые действия, в результате которых персональные данные уничтожаются безвозвратно с невозможностью дальнейшего восстановления содержания персональных данных в информационной системе персональных данных и (или) результате которых уничтожаются материальные носители персональных данных

3. Оператор может обрабатывать следующие персональные данные Пользователя

  1. Фамилия, имя, отчество;
  2. Электронный адрес;
  3. Номера телефонов;
  4. Также на сайте происходит сбор и обработка обезличенных данных о посетителях (в т.ч. файлов «cookie») с помощью сервисов интернет-статистики (Яндекс Метрика и Гугл Аналитика и других).
  5. Вышеперечисленные данные далее по тексту Политики объединены общим понятием Персональные данные.

4. Цели обработки персональных данных

  1. Цель обработки персональных данных Пользователя — информирование Пользователя посредством отправки электронных писем; заключение, исполнение и прекращение гражданско-правовых договоров; связь с Пользователем, оставившим персональные данные
  2. Также Оператор имеет право направлять Пользователю уведомления о новых продуктах и услугах, специальных предложениях и различных событиях. Пользователь всегда может отказаться от получения информационных сообщений, направив Оператору письмо на адрес электронной почты dobrosayt@yandex.ru с пометкой «Отказ от уведомлениях о новых продуктах и услугах и специальных предложениях».
  3. Обезличенные данные Пользователей, собираемые с помощью сервисов интернет-статистики, служат для сбора информации о действиях Пользователей на сайте, улучшения качества сайта и его содержания.

5. Правовые основания обработки персональных данных

  1. Оператор обрабатывает персональные данные Пользователя только в случае их заполнения и/или отправки Пользователем самостоятельно через специальные формы, расположенные на сайтеhttps://dobrosayt.ru. Заполняя соответствующие формы и/или отправляя свои персональные данные Оператору, Пользователь выражает свое согласие с данной Политикой/
  2. Оператор обрабатывает обезличенные данные о Пользователе в случае, если это разрешено в настройках браузера Пользователя (включено сохранение файлов «cookie» и использование технологии JavaScript).

6. Порядок сбора, хранения, передачи и других видов обработки персональных данных

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

  1. Оператор обеспечивает сохранность персональных данных и принимает все возможные меры, исключающие доступ к персональным данным неуполномоченных лиц
  2. Персональные данные Пользователя никогда, ни при каких условиях не будут переданы третьим лицам, за исключением случаев, связанных с исполнением действующего законодательства.
  3. В случае выявления неточностей в персональных данных, Пользователь может актуализировать их самостоятельно, путем направления Оператору уведомление на адрес электронной почты Оператора dobrosayt@yandex.ru с пометкой «Актуализация персональных данных».
  4. Срок обработки персональных данных является неограниченным. Пользователь может в любой момент отозвать свое согласие на обработку персональных данных, направив Оператору уведомление посредством электронной почты на электронный адрес Оператора dobrosayt@yandex.ru с пометкой «Отзыв согласия на обработку персональных данных».

7. Трансграничная передача персональных данных

  1. Оператор до начала осуществления трансграничной передачи персональных данных обязан убедиться в том, что иностранным государством, на территорию которого предполагается осуществлять передачу персональных данных, обеспечивается надежная защита прав субъектов персональных данных.
  2. Трансграничная передача персональных данных на территории иностранных государств, не отвечающих вышеуказанным требованиям, может осуществляться только в случае наличия согласия в письменной форме субъекта персональных данных на трансграничную передачу его персональных данных и/или исполнения договора, стороной которого является субъект персональных данных.

8. Заключительные положения

  1. Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты dobrosayt@yandex.ru.
  2. В данном документе будут отражены любые изменения политики обработки персональных данных Оператором. Политика действует бессрочно до замены ее новой версией.
  3. Актуальная версия Политики в свободном доступе расположена в сети Интернет по адресу https://dobrosayt.ru
×
Яндекс.Метрика