Ключевые слова:web, html, freebsd, apache, (найти похожие документы)
From: Dindin <dindin@hitv.ru.>
Newsgroups: email
Date: Mon, 12 Sep 2005 18:21:07 +0000 (UTC)
Subject: Установка w3c-validator на FreeBSD 5.4
Те, кто занимается WEB-разработкой, наверняка знают что такое W3C. World
Wide Web Consortium - организация, которая занимается разработкой
стандартов WWW.
И в числе прочего на их сайте есть такой сервис,
как html-валидатор. Находится он по адресу http://validator.w3c.org и
занимается тем, что проверяет заданный документ на соответствие
стандартам W3C. Для WEB-разработки штука весьма полезная и нужная. Вот
только лазить на w3c.org каждый раз, когда нужно проверить страницу
немного накладно; хотелось бы поиметь локальную версию.
Перед началом установки у меня уже стояли FreeBSD 5.4, apache 1.3.33 с
поддержкой виртуальных хостов, Perl 5.8.7.
Иду на w3c и читаю лицензионное соглашение.
Для тех, кто плохо знает английский изложу вкратце суть: разрешается
свободное распространение и копирование при условии указания ссылки на
эту самую лицензию, а при внесении любых изменений в код эти изменения
должны быть опубликованы. Дальше идёт стандартное "Как есть" (As is) и
"Никаких гарантий" (No warranty). Лицензия меня вполне устраивает.
Начинаю ставить.
Для работы w3c-validator требует:
Набор SGML/XML тулзов OpenSP; есть в портах, лежит в /usr/ports/textproc/opensp (1,2M)
Перловые модули:
* perl-Config-General /usr/ports/devel/p5-Config-General (39k)
* perl-HTML-Template /usr/ports/www/p5-HTML-Template (62k)
* perl-Net-IP /usr/ports/net-mgmt/p5-Net-IP (26k)
* perl-Set-IntSpan /usr/ports/math/p5-Set-IntSpan (14k)
* perl-Text-Iconv /usr/ports/converters/p5-Text-Iconv (9k)
Устанавливаю каждый из портов:
#cd /usr/ports/textproc/opensp
#make install
и так далее.
Скачиваю DTD (500k):
#fetch http://validator.w3.org/sgml-lib.tar.gz
И сам валидатор (300k):
#fetch http://validator.w3.org/validator.tar.gz
Распаковываю:
#tar xvfz validator.tar.gz
#tar xvfz sgml-lib.tar.gz
В моём случае версия валидатора была 0.7.0, и распаковалось всё в
директорию validator-0.7.0/
Кладу туда, где всё будет лежать:
#mv validator-0.7.0 /usr/local/validator
Вообще-то validator ищет свои конфигурационные файлы в /etc/w3c/, но в
BSD-системах полагается пользовательскиe приложения помещать в
/usr/local/, а их конфиги в /usr/local/etc, поэтому копирую
конфигурационные файлы:
#cp -R /usr/local/validator/htdocs/config /usr/local/etc/w3c
А что бы валидатор мог их там найти, в скрипте
/usr/local/validator/httpd/cgi-bin/check заменяю строку:
-ConfigFile => ($ENV{W3C_VALIDATOR_CFG} || '/etc/w3c/validator.conf'),
на
-ConfigFile => ($ENV{W3C_VALIDATOR_CFG} || '/usr/local/etc/w3c/validator.conf'),
По той же самой причине заменяю в /usr/local/etc/w3c/validator.conf строку
Parser = /usr/bin/onsgmls
на
Parser = /usr/local/bin/onsgmls
А поскольку я хочу проверять в том числе и локальные URL, то заменяю там же:
Allow Private IPs = no
на
Allow Private IPs = yes
Внимание! не рекомендуется разрешать проверку Private IP-адресов на
публичных серверах из соображений безопасности - см RFC1918
С настройкой валидатора всё. Начинаю настройку Апача.
Что бы создать виртуальный хост с адресом http://validator дописываю в
/usr/local/etc/apache/httpd.conf:
#алиасы для того, что бы апач находил скрипты
ScriptAlias /check /usr/local/validator/httpd/cgi-bin/check
ScriptAliasMatch /feedback(\.html)? /usr/local/validator/httpd/cgi-bin/sendfeedback.pl
#настройки для корректного отображения
<Directory /usr/local/validator/htdocs/>
Options IncludesNOEXEC Indexes MultiViews
AllowOverride None
AddHandler server-parsed .html
AddCharset utf-8 .html
</Directory>
#собственно описание виртуального хоста
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /usr/local/validator/htdocs/
ServerName validator
ErrorLog /var/log/www.validator.log
</VirtualHost>
После этого я добавил в свой локальный DNS запись validator IN CNAME, но
можно и просто записать в /etc/hosts:
127.0.0.1 validator
Рестартую Апач:
#apachectl restart
Открываю в браузере http://validator и радуюсь жизни.
Много полезного я подчерпнул из:
http://validator.w3.org/docs/install.html
- Installation Documentation for The W3C Markup Validation Service
http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
- W3C Software License
http://httpd.apache.org/docs/1.3/
- Apache HTTP Server Version 1.3 Documentation