Для подтверждения прав на вебсайты Яндекс и Google предлагают различные способы. Самый простой и быстрый способ это размещение на сайте html-файла, но он имеет тот недостаток, что этот файл всегда должен оставаться в корневой директории сайта и за этим файлом надо внимательно следить, чтобы его случайно не удалили или не скопировали на другой сайт. Этот недостаток особенно актуален при создании зеркал, в этом случае количество файлов равно N*M*K, где N – количество доменов, M – количество поисковых систем, в которых надо регистрировать сайт, а K – количество владельцев сайта, которое обычно равно 1.
На мой взгляд, самый правильный способ подтверждения прав на сайт – это добавление TXT записей в DNS.
Например, у регистратора NetFox это делается так:
Недостатком этого способа может быть то, что обновление DNS занимает достаточно большое время. Проверить DNS записи можно с помощью DNS Lookup, NS, CNAME, TXT and MX Record Lookup:
вот тут видно, что TXT записи пока не обновились.
Другой возможный способ проверки TXT записей – это использование команды dig, но после общения со службой поддержки NetFox я понял, что у NetFox-a dig будет в любом случае показывать фиг, потому что, как они сказали, “AXFR закрыт со сторонних ip кроме наших”. Если они со своих ip вызывают dig, то получается вот такая штука:
dig @ns1.netfox.ru developernote.com axfr ; <<>> DiG 9.7.0-P1 <<>> @ns1.netfox.ru developernote.com axfr ; (1 server found) ;; global options: +cmd developernote.com. 7200 IN SOA ns2.netfox.ru. info.netfox.ru. 2011081102 28800 7200 604800 86400 developernote.com. 7200 IN A 91.122.53.161 developernote.com. 7200 IN MX 5 not-mail.developernote.com. yandex-verification.developernote.com. 7200 IN TXT "**************" google-site-verification.developernote.com. 7200 IN TXT "*************************************" developernote.com. 7200 IN NS ns2.netfox.ru. developernote.com. 7200 IN NS ns3.netfox.ru. pop.developernote.com. 7200 IN A 91.122.53.161 developernote.com. 7200 IN NS ns1.netfox.ru. www.developernote.com. 7200 IN A 91.122.53.161 ftp.developernote.com. 7200 IN A 91.122.53.161 developernote.com. 7200 IN SOA ns2.netfox.ru. info.netfox.ru. 2011081102 28800 7200 604800 86400 ;; Query time: 19 msec ;; SERVER: 78.111.80.5#53(78.111.80.5) ;; WHEN: Mon Aug 15 15:42:39 2011 ;; XFR size: 12 records (messages 1, bytes 406)
а вот что получается с любого стороннего ip адреса:
$ dig @ns1.netfox.ru developernote.com axfr ; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>> @ns1.netfox.ru developernote.com axfr ; (1 server found) ;; global options: printcmd ; Transfer failed.
Если проверять другим способом, производя запрос для самой записи и указывая её FQDN, то тоже ничего нет:
$ dig yandex-verification.delelopernote.com -t txt ; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>> yandex-verification.delelopernote.com -t txt ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 14459 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;yandex-verification.delelopernote.com. IN TXT ;; AUTHORITY SECTION: com. 900 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 13 13569126 1800 900 604800 86400 ;; Query time: 155 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Wed Aug 17 12:19:24 2011 ;; MSG SIZE rcvd: 128
Прописываем TXT записи у регистратора Logol
Для начала я добавил тестовую TXT запись с именем testname. Проверяем что получилось:
$ dig testname.slogpost.ru -t txt ; <<>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 <<>> testname.slogpost.ru -t txt ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45867 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;testname.slogpost.ru. IN TXT ;; ANSWER SECTION: testname.slogpost.ru. 3600 IN TXT "testvalue" ;; AUTHORITY SECTION: slogpost.ru. 86400 IN NS ns1.logol.ru. slogpost.ru. 86400 IN NS ns2.logol.ru. ;; ADDITIONAL SECTION: ns1.logol.ru. 35277 IN A 188.93.212.212 ns2.logol.ru. 35277 IN A 213.248.61.34 ;; Query time: 3 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Wed Aug 17 12:16:18 2011 ;; MSG SIZE rcvd: 134
Тут есть ANSWER SECTION, который содержит значения для TXT записи “testname”.