Проверка доменных имен
Whois-сервис РосНИИРОС
РосНИИРОС (Российский Научно-Исследовательский Институт Развития Общественных Сетей) является администратором российского национального домена верхнего уровня RU, обеспечивая регистрацию в нем доменов второго уровня. Заметим попутно, что на момент написания книги в домене RU было зарегистрировано свыше 205 тысяч доменов второго уровня.
Сервис Whois (http://www.ripn.net/nic/whois/index.html) предоставляется РосНИИРОС в информационных целях и может быть использован только для получения информации о доменном имени и контактных лицах. Основным условием его предоставления является обязательство не производить массовых выборок информации, превышающих разрешенные пределы: с одного IP-адреса допускается делать ограниченное количество запросов в минуту. В противном случае вместо обработки запросов возможна выдача предупредительного сообщения. Если в течение часа пользователь неоднократно превысит частоту поступления запросов, то предоставление Whois-сервиса ему прекращается, а на каждый последующий запрос выдается извещение об отказе в услуге:
Для получения информации о домене требуется заполнить лишь строку запроса (см. рис. 2.13), в которой указывается имя интересующего вас домена, и щелкнуть по кнопке Search (Поиск). В результате работы сервиса будет выдана страница, содержащая полную информацию по домену (рис. 2.14).
Рис. 2.13. Служба Whois РосНИИРОС
Рис. 2.14. Страница ответа службы Whois РосНИИРОС
Приведем в алфавитном порядке все возможные поля, встречающиеся в ответах Whois-сервиса РосНИИРОС:
• address – контактный адрес физического лица (на английском языке, необязательное поле);
• admin-c – идентификатор представителя организации для административного контакта с РосНИИРОС;
• admin-o – идентификатор администратора домена;
• bill-c – идентификатор представителя организации, ответственного за оплату услуг по домену;
• changed – дата последнего изменения клиентом информации в объекте (приводит к запуску процесса тестирования зоны). Для доменов третьего уровня может указывать дату, когда начнется ежегодное автоматическое тестирование зоны, если не будет прислан запрос на обновление зоны;
• created – дата регистрации домена; не изменяется при продлении срока регистрации, смене администратора или регистратора домена;
• descr – краткое описание объекта в произвольной текстовой форме (необязательное поле);
• domain – доменное имя;
• e-mail – электронный адрес;
• fax-no – номер факса (с международным кодом и кодом города);
• free-date – дата освобождения домена (указывается для доменов с приближающимся сроком аннулирования регистрации);
• mnt-adm – организация или физическое лицо, которому принадлежит служба технической поддержки;
• mnt-by – идентификатор службы технической поддержки (службы авторизации), отвечающей за корректность информации о домене в базе данных РосНИИРОС;
• mntner – идентификатор службы технической поддержки в базе данных РосНИИРОС;
• nic-hdl – идентификатор объекта базы данных;
• nserver – список DNS-серверов, поддерживающих домен (если имя сервера содержит имя домена, то указываются также его IP-адреса);
• org – название организации;
• paid-till – дата, по которую оплачена регистрация домена;
• person – полное имя физического лица (на английском языке), являющегося администратором домена;
• phone – телефоны с международным кодом и кодом города;
• reg-ch – идентификатор регистратора, которому передается домен (при смене регистратора);
• registrar – идентификатор регистратора;
• remark – произвольные текстовые комментарии (необязательное поле);
• source – источник информации;
• state – состояние объекта;
• tech-c – идентификатор контактного лица по техническим вопросам;
• type – тип домена;
• whois – Whois-сервис регистратора;
• www – URL-адрес сайта регистратора;
• x-freeing – домен подлежит удалению из реестра в течение часа.
Поле State является одним из обязательных полей в ответах Whois-сервиса РосНИИРОС при запросе по доменным именам второго уровня в зонах RU и SU и третьего уровня в зонах COM.RU, NET.RU, ORG.RU, PP.RU. Оно показывает состояние зарегистрированного домена: делегирован он или нет. Значение поля зависит от объекта, по которому делается запрос: домен второго или третьего уровня, кем зарегистрирован (РосНИИРОС или другой регистратор). Значения, которые может принимать поле State, представлены в таблице 3.
Таблица 3. Описание поля State в ответах Whois-сервиса РосНИИРОССлужба Whois InterNIC
Чтобы получить информацию по доменным именам, зарегистрированным в зонах верхнего уровня AERO, ARPA, BIZ, COM, COOP, EDU, INFO, INT, MUSEUM, NAME, NET или ORG, можно воспользоваться сервисом Whois InterNIC (http://www.internic.net/whois.html). В строке запроса (рис. 2.15) укажите искомое доменное имя, а переключателем, расположенным под ней, определите его статус:
Рис. 2.15. Служба Whois InterNIC• Domain (Домен);
• Registrar (Регистратор);
• Nameserver (Сервер имен).
Ответ службы не столь подробный, как у Whois РосНИИРОС, но необходимая информация о владельцах и датах регистрации и ее окончания содержится.
Проверка доменных имен на сайтах Internet-провайдеров
Многие компании, предоставляющие услуги по размещению серверов в Internet, (провайдеры услуг Internet) обеспечивают пользователей сервисом проверки доменного имени. Обычно это простая форма со строкой поиска, как, например, на странице проверки домена (http://ropnet.ru/services/hosting/check/) на сайте компании RopNet (см. рис. 2.16).
Рис. 2.16. Страница проверки домена на сайте компании RopNetДля работы с формой введите имя интересующего вас домена. Затем отметьте зоны, в которых нужно его проверить, и нажмите на кнопку Проверить!. В результате будет получен ответ о том, свободен или занят домен. Если он свободен, его можно будет сразу же и заказать.
Проверка гиперссылок
Разработаны и применяются автоматические роботы, которые могут «зайти» на сайт и проверить все ссылки (в том числе и внешние).
W3C Link Checker
W3C Link Checker – это мощный сетевой ресурс для всестороннего тестирования ссылок на сайте, предоставляемый организацией W3C (консорциумом World Wide Web; http://www.w3.org/). Первая версия тестера была разработана в августе 1998 года, а в ноябре 1999 года вышла новая, которая регулярно дорабатывается. Исходный код программы, написанный на языке программирования Perl, доступен на сайте консорциума. Если вы зайдете в Internet по адресу http://validator.w3.org/checklink/, в окне браузера появится форма, показанная на рис. 2.17.
Рис. 2.17. Форма W3C Link CheckerВ поле Enter the address (URL) of a document that you would like to check (Введите адрес документа, который хотите проверить) впишите URL страницы, предназначенной для тестирования, или начальный адрес, если будет проверяться несколько документов. Напомним, что аббревиатура URL (сокращение от англ. Universal Resource Locator, Универсальный указатель на ресурс) означает принятый в Internet адрес ресурса, имеющий определенный формат, а именно: протокол://адрес. Нажмите на кнопку Check (Проверить).
Тестер проверяет HTML– или XHTML-документы, строит список ссылок на метки и адреса, сообщает в своем отчете о найденных ошибках. Проверяется, не повторена ли одна и та же метка дважды. Затем тестируются все обнаруженные ссылки (включая переходы на метки внутри документов) – с тем, чтобы определить их доступность.
Отчет о проверке выглядит, как показано на рис. 2.18.
Рис. 2.18. Отчет о проверке ссылокДля дополнительной проверки отметьте, если требуется, нужные поля в секции Options (Параметры):
• Summary only (Только итоги) – формируется общий отчет без подробного описания хода проверки: проверяемых адресов и страниц, времени ответа и т. д.;
• Hide redirects (Не показывать перенаправленные) – обнаруженные ссылки с переадресацией показаны в обычном отчете в следующем виде:
http://counter.rambler.ru/top100/ redirected to
http://top100.rambler.ru/top100/
What to do: Usually nothing.
HTTP Code returned: 302 -> 200
HTTP Message: Found -> OK
Lines: 193Если выключатель Hide redirects включен, подобные ошибки не фиксируются. Изображенный выше фрагмент отчета формируется при положении расположенного рядом переключателя в состоянии All (Все). При этом обнаруженные в ходе проверки ссылки с переадресацией каталогов, если таковые имеются, показаны в обычном отчете следующим образом:
List of directory redirects:
The links below are not broken, but the document does not use the exact URL.
http://www.homeincome.com/websearch/bizsearch redirected to
http://www.homeincome.com/websearch/bizsearch/
What to do: Add a trailing slash to the URL.
HTTP Code returned: 301 -> 200
HTTP Message: Moved Permanently -> OK
Lines: 221При фиксации дополнительного переключателя в положении For directories only (Только для каталогов) подобные ошибки не фиксируются;
• Don\'t send the Accept-Language header (Не отправлять заголовок Accept-Language) – не посылать заголовок о предпочитаемом языке.
• Check linked documents recursively, recursion depth __ (Рекурсивно проверять документы по ссылкам, глубина рекурсии__). Можно проверить часть сайта рекурсивно, то есть от ссылки к ссылке – и это, пожалуй, самая сильная сторона проекта. В этом случае в отчет включаются страница за страницей сайта, и для каждой из них сообщаются результаты проверки. Однако такое тестирование может занять довольно много времени. Указание небольшой глубины рекурсии, то есть количества проверяемых документов, позволяет уменьшить время проверки;
• Save options in a cookie (Сохранить опции в файле cookie). Выбранные вами опции будут сохранены на вашем компьютере в файле cookie, и при последующей проверке будут сразу использованы.
Обратите внимание, что программа не поддерживает так называемый стандарт исключений для роботов, то есть содержимое файла robots.txt не анализируется.
Проверка HTML-кода
Сервис проверки HTML-документов Markup Validation Service
Сервис Markup Validation Service (Сервис проверки синтаксиса разметки), предлагаемый организацией W3C – World Wide Web консорциумом (http://www.w3.org/) – по адресу http://validator.w3.org/, предназначен для проверки HTML-документов на соответствие рекомендациям W3C HTML и XHTML, а также другим HTML-стандартам. Данный сервис представляет собой шлюз к известному синтаксическому анализатору SGML (Standard Generalized Markup Language – Обобщенный стандартный язык разметки) – программному модулю SP (http://www.jclark.com/sp/). Markup Validation Service переправляет указанный посетителем адрес модулю SP, получает результат, форматирует его в HTML-страницу и выдает ее в браузер пользователя. Сам по себе рассматриваемый сервис не генерирует никаких сообщений об ошибках.
SGML – это международный стандарт на определение не зависящих от компьютерных платформ и систем методов представления текстов в электронной форме. Точнее, SGML является метаязыком, то есть средством формального описания языка, в данном случае, языка разметки.
Исторически слово разметка использовалось для описания аннотаций или других отметок в тексте, предназначенных для указания машинистке или наборщику, как именно должна быть напечатана или набрана определенная фраза. Примерами служат волнистое подчеркивание для обозначения жирного шрифта, специальные символы для обозначения пропуска отдельных предложений или их печати определенным шрифтом, и т. п. С автоматизацией форматирования и печати текстов термин был расширен, охватывая сейчас всяческие коды разметки, вставляемые в электронные тексты для управления форматированием, печатью или иной обработкой.
В определенном смысле все печатные тексты размечены: знаки пунктуации, использование заглавных букв, размещение букв на странице, даже пробелы между словами можно считать своеобразным кодированием, функция которого – помочь читателю определить, где заканчивается одно слово и начинается другое, как отделить структурные элементы, например, заголовки или подчиненные предложения. Кодирование текста для компьютерной обработки можно считать выявлением неявного или предположительного, указанием пользователю, как интерпретировать содержимое текста. Таким образом, язык разметки – это набор соглашений о разметке, используемых в комплексе для кодирования текстов. Язык разметки должен определять, какая разметка является допустимой, какая – необходимой, как различаются разметка и текст, и что разметка означает. SGML предоставляет средства решения первых трех задач; последняя требует описательных документов – руководств.
Форма Validate Your Markup (Проверка синтаксиса разметки), загружаемая в окно браузера, представлена на рис. 2.19.
Рис. 2.19. Форма Validate Your Markup сервиса Markup Validation ServiceВведите в поле Address (Адрес) раздела Validate by URL (Проверка по URL) адрес страницы в Internet, которая должна быть протестирована, и нажмите на кнопку Check (Проверить). Рассматриваемый сервис имеет дополнительные возможности, которые становятся доступны при переходе по ссылке Extended Interface (Расширенный интерфейс). В этом случае откроется страница, изображенная на рис. 2.20.
Рис. 2.20. Страница дополнительных возможностей сервиса Markup Validation ServiceЕсли нужно, воспользуйтесь здесь следующими опциями:
• Encoding (Кодировка). Установленное по умолчанию значение Detect automatically (Автоопределение) подойдет для большинства случаев, но иногда с целью тестирования может понадобиться его изменение и выбор конкретной кодировки;
• Use Fallback instead of Override (Использовать как аварийный режим вместо полной отмены). Если флажок установлен, кодировка, указанная в пункте Encoding, будет применена лишь тогда, когда документ не содержит информации о кодировке символов;
• Doctype (Тип документа). Служит для принудительного задания типа документа, не зависящего от имеющейся в нем информации. Размещенная рядом опция Use Fallback instead of Override, как и в предыдущем пункте, нужна для принудительного включения типа документа в том случае, если он не задан на странице явно;
• Show Source (Показывать исходный код). В отчет выводится исходный HTML-код документа с привязанными к нему сообщениями об ошибках;
• Show Outline (Показать иерархическую структуру). Выдается наглядная структура документа, начиная с тэгов
• Show Parse Tree (Показать дерево синтаксического анализа). Отображается точная последовательность прочтения документа SGML-анализатором;
• „.exclude attributes (…исключая атрибуты). Для наглядности из дерева синтаксического анализа будут удалены атрибуты;
• Validate error pages (Проверять правильность страниц с ошибками). Когда страница недоступна (ошибка 404), выдается сообщение об ошибке. В некоторых случаях требуется оттестировать такую страницу с сообщением – тогда и включается опция;
• Verbose Output (Подробный отчет). Флажок ставится, если необходимо получить дополнительную информацию о найденных ошибках.
Для проверки нажмите на кнопку Validate this page (Проверить эту страницу).
После тестирования документа, расположенного по указанному вами адресу, на экран выводится листинг результатов.
Существует возможность альтернативной проверки – посредством загрузки документов, требующие исследования, на сервер. Для этого предназначен раздел Validate by File Upload (Проверка загруженного файла) формы Validate Your Markup (рис. 2.19). Нажмите на кнопку Browse (Обзор), расположенную рядом с полем Local File (Локальный файл), и выберите на своем компьютере нужный файл. Для его загрузки на удаленный сервер и начала проверки щелкните по кнопке Check. Как и при проверке по URL, можно воспользоваться дополнительными опциями, если перейти по ссылке Extended File Upload Interface (Расширенный интерфейс для загруженного файла). В этом случае вам будет предложено заполнить форму, аналогичную представленной на рис. 2.20. С той же целью можно набрать в строке браузера адрес: http://validator.w3.org/file-upload.html.
Кроме описанных проверок, рассматриваемый сервис позволяет тестировать таблицы CSS (так называемые каскадные или иерархические таблицы стилей). Для этого наберите в строке браузера адрес: http://jigsaw.w3.org/css-validator/. На экране отобразится страница с формой Validate Your Style Sheet (Проверка таблицы стилей), представленной на рис. 2.21.
Рис. 2.21. Форма Validate Your Style SheetКак и при проверке HTML-страницы, существует возможность исследовать таблицу CSS по ее адресу в Internet (поле Address в разделе Validate by URI) и с помощью загрузки требуемого файла на сервер (поле Local CSS file (Локальный файл CSS) в разделе Validate by File Upload). Кроме того, в разделе Validate by direct input (Проверка прямого ввода) вы можете просто ввести текст таблицы CSS. В любом случае тестирование начнется после щелчка по кнопке Check, соответствующей выбранному разделу. В каждом из рассмотренных разделов имеются ссылки на формы с дополнительными параметрами проверки (Advanced Interface – Расширенный интерфейс), одна из которых представлена на рис. 2.22.
Рис. 2.22. Форма Validate Your Style Sheet с расширенными возможностями проверкиВ этот форме добавлена возможность выбора уровня предупреждений (так, можно вовсе от них отказаться), версии CSS и среды, для которой предназначены описания в таблицах (например, презентация, карманный компьютер, экран, печать, проектор и т. д.).
Сервис WDG HTML Validator
Сетевой сервис WDG HTML Validator (http://www.htmlhelp.com/tools/validator/), предлагаемый группой разработчиков, объединившихся под названием Web Design Group (http://www.htmlhelp.com/), предназначен для проверки синтаксиса HTML-страниц, а также таблиц CSS. Форма для задания адреса исследуемой страницы представлена на рис. 2.23. Введите его в поле URL и нажмите на кнопку Validate it! (Проверить!).
Рис. 2.23. Форма сервиса WDG HTML ValidatorДля настройки вида отчета воспользуйтесь следующими флажками:
• Include warnings (Включить предупреждения);
• Show input (Показывать исходный код);
• Validate entire site (Проверить весь сайт);
• Hide valid results (Скрыть допустимые результаты).
Если включена опция Validate entire site, WDG HTML Validator следует правилам исключений для роботов (заданным в файле robots.txt), что позволяет исключить из проверки отдельные части сайта. Для указания правил специально для робота сервиса WDG HTML Validator используйте в качестве User-agent имя: WDG_SiteValidator.
WDG HTML Validator поддерживает протоколы HTTP, HTTPS и FTP. Для анонимного входа на FTP-сервер вводится URL вида ftp://ftp.yourdomain.ru/foo/bar.html. Если для доступа требуются имя пользователя и пароль, адрес указывается в форме: ftp://user:pass@ftp.yourdomam.m/foo/bar.html.
Для обработки страниц XHTML и XML требуется добавить в поле URL к указываемому адресу (справа) конструкцию: &xml=yes.
Если вы хотите обработать несколько страниц одновременно, задайте их адреса в форме по адресу: http://www.htmlhelp.com/tools/validator/batch.html (рис. 2.24). Учтите, что каждый адрес следует вводить отдельной строкой.
Рис. 2.24. Форма сервиса WDG HTML Validator для одновременной проверки нескольких страницЧтобы протестировать отдельные файлы, находящиеся на локальном компьютере, воспользуйтесь формой (рис. 2.25), расположенной по адресу: http://www.htmlhelp.com/tools/validator/upload.html.
Рис. 2.25. Форма сервиса WDG HTML Validator для проверки локальных файловЩелкните по кнопке Browse (Обзор), находящейся рядом с полем (Выберите на своем компьютере HTML-документ, который следует загрузить для проверки), и найдите интересующий вас файл. В поле Character encoding (Кодировка символов) определите нужную кодировку для обрабатываемого документа. Если требуется, отметьте флажками опции Include warnings и Show input. Для загрузки выбранного файла и запуска проверки щелкните по кнопке Validate it!.
Еще одна форма рассматриваемого сервиса (http://www.htmlhelp.com/tools/ validator/direct.html) служит для тестирования HTML-кода, непосредственно введенного в ее поле (см. рис. 2.26). Как и в рассмотренных ранее формах, здесь также можно определить кодировку в поле Character encoding, а также применить настройки Include warnings и Show input. Дополнительно добавлена кнопка Clear form (Очистить форму).
Рис. 2.26. Форма сервиса WDG HTML Validator для проверки HTML-кодаДля проверки таблиц CSS разработчики Web Design Group предлагают два сервиса: обработка по указанному адресу в Internet (http://www.htmlhelp.com/tools/csscheck/) и с помощью загрузки файла с локального компьютера на удаленный сервер (http://www.htmlhelp.com/tools/csscheck/upload.html). Формы, используемые для данных сервисов, аналогичны приведенным выше.