Как подтвердить, что пользователь владеет таким веб-сайтом, как Google Analytics? - PullRequest
1 голос
/ 12 декабря 2010

Я хочу реализовать скрипт для пользователей, чтобы подтвердить, что веб-сайт принадлежит им (или, по крайней мере, они контролируют его), например, как это делает Google Analytics.Какой самый безопасный способ сделать это?Я знаю, что Google Analytics требует, чтобы вы загрузили скрипт в корневой каталог вашего сайта, но есть ли другие способы сделать это?Кроме того, как Google Analytics выполняет это?

1 Ответ

0 голосов
/ 12 декабря 2010

Google Analytics не требует загрузки чего-либо в корневую директорию, а также не требует владения вашим доменом. (Он предоставляет дополнительную службу проверки, где он попытается сообщить вам, добавили ли вы фрагмент кода Google Analytics на свои страницы.)

Google Analytics принимает любые обращения к определенной учетной записи и не проверяет, кому принадлежит какой сайт. (Это может редко вызывать проблемы, если кто-то захватывает ваш фрагмент Google Analytics, включая номер учетной записи, и использует его на своем сайте, но эти данные легко отфильтровать.)

Некоторые инструменты, такие как Инструменты Google для веб-мастеров, требуют, чтобы вы подтвердили, что являетесь владельцем веб-сайта.

Два наиболее распространенных способа подтверждения права собственности на домен:

  1. Вас просят загрузить файл с определенным именем в корневой каталог, и он проверяет его.
  2. Вас просят создать запись DNS с определенными значениями, обычно записью CNAME.

В обоих случаях службы проверяют, внесено ли изменение, обычно позволяя пользователю инициировать проверку достоверности (после выполнения шагов). Предположительно, используя что-то вроде curl, чтобы проверить, существует ли файл, и / pr, отправив эхо-запрос на DNS домена, чтобы узнать, существует ли запись.

РЕДАКТИРОВАТЬ:

Итак, общий метод выполнения номер один - дать им указание создать файл с определенным именем и конкретным содержимым. Итак, скажем, вы говорите им создать страницу с именем bz239239239.html и говорите им, что файл должен содержать текст checkbz239239239.

Затем, чтобы подтвердить, что они следовали вашим указаниям, (пример PHP)

$contents = @file_get_contents('http://example.com/bz239239239.html');
if(strstr($contents, 'checkbz239239239'))
{
 return true; //this condition means that the page exists and it contains the text that it should.
}

Я не эксперт в DNS, но я понимаю, что DNS считается таким же безопасным, как и сам сайт. то есть вы можете считать его безопасным, но теоретически его можно взломать, но в этот момент весь сайт взломан, что является их проблемой, а не вашей.

...