--PAGE_BREAK--Широкое использование компьютерных сетей неспециалистами на сегодня стало возможно благодаря разработке простых в применении средств доступа к многообразным ресурсам Интернет. В первую очередь это относится к появлению специальных программ-клиентов WWW, называемых браузерами, обладающих “дружественным” графическим интерфейсом (т.е. способом взаимодействия пользователя с программой).
Схема адресации в иерархически организованной файловой системе, характерной для таких популярных операционных систем, как DOS и Unix, позволяет однозначно идентифицировать заданный файл путем указания его времени и уникального адресного пути к нему.
Пример:
Важная для избежания ошибок при организации доступа к файлам разница в этих схемах состоит в использовании разных слэшей — прямого (/) в Unix и обратного (\) в DOS, а также чувствительность к верхнему и нижнему регистру, свойственная только Unix. За основу схемы адресации ресурсов в Сети принята нотация Unix, которая претерпела естественные расширения за счет приписывания к существующей схеме слева имени протокола доступа к заданному ресурсу, где расположен ресурс; а справа после служебных символов (#, ?) имени метки внутри файла или элементов поискового ресурса. В примерах
· www.dvgu.ru/users/data/Lessons.htm#Page1
· www.dvgu.ru/cgi-bin/proc?corn
содержится обращение по протоколу http к компьютеру с доменным именем www.dvgu.ru с попыткой доступа в первом случае к области файла Lessons.htm с меткой Page1, а во втором – реализация поискового запроса к программе proc с термином для поиска «corn» на том же сервере.
Отметим, что именно в таком виде и вводятся строки запроса на ресурсе в специально отведенном поле браузера, после чего нажатием клавиши Enter инициируется соединение и загрузка.
Итак, в основу построения адреса ресурса в Сети оказались заложены следующие понятия и принципы:
Расширяемость — новые адресные схемы должны были легко вписываться в существующий синтаксис URI (Uniform Resource Identifier — универсальный индикатор ресурса).
Полнота — по возможности, любая из существующих схем должна описываться посредством URI.
Читаемость — адрес должен быть легко читаем человеком, что вообще характерно для технологии WWW.
Расширяемость была достигнута за счет выбора определенного порядка интерпретации адресов, который базируется на понятии “адресная схема”. Идентификатор схемы стоит перед остатком адреса, отделен от него двоеточием и определяет порядок интерпретации остатка.
Полнота и читаемость порождали коллизию, связанную с тем, что в некоторых схемах используется двоичная информация. Эта проблема была решена за счет формы предоставления такой информации. Символы, которые несут служебные функции, и двоичные данные отображаются в URI в шестнадцатеричном коде и предваряются символом "%".
Прежде, чем рассмотреть различные схемы представления адресов, приведем еще один пример простого адреса URI:
lemoi.phys.dvgu.ru/wst/index.html
Перед двоеточием стоит идентификатор схемы адреса — «http». Это имя отделено двоеточием от остатка URI, который называется «путем». В данном случае путь состоит из доменного адреса машины, на которой установлен сервер HTTP, и пути от корня дерева сервера к файлу «index.html».
Кроме представленной выше полной записи URI существует упрощенная. Она предполагает, что к моменту ее использования многие параметры адреса ресурса уже определены (протокол, адрес машины в Сети, некоторые элементы пути).
При таких предположениях автор гипертекстовых страниц может указывать только относительный адрес ресурса, т.е. адрес относительно определенных базовых ресурсов.
1.2.2. Схемы адресации сетевых ресурсов
В RFC-1630 (Request for Comment — документы с таким названием содержат в себе материалы по Интернет-технологии, которые доведены до уровня стандарта или близки к этому уровню) рассмотрено восемь схем адресации Интернет и указаны две, синтаксис которых находится в стадии обсуждения.
Схема HTTP. Это основная схема для WWW. В схеме указываются ее идентификатор, адрес машины, TCR-порт, путь в директории сервера, поисковый критерий и метка.
Следует отличать понятие TCR-порта от физического разъема на задней стенке системного блока компьютера. В Интернет принято идентифицировать конкретную прикладную программу с определенным числом, или портом (это понятие абсолютно не связано с названием физического устройства ввода-вывода компьютера). Всякий раз передаваемый по сети от одного компьютера к другому пакет данных содержит информацию о том, какой именно протокол содержит информацию о том, какой именно протокол используется и с какой прикладной программой машины пытается установить связь. Номер порта и обозначает эту прикладную программу.
Приведем несколько примеров URI для схемы HTTP:
lemoi.phys.dvgu.ru/wst/test.html
Это наиболее распространенный вид URI, применяемые в документах WWW. Вслед за именем схемы (http) следует путь, состоящий из доменного адреса машины и полного адреса HTML-документа в дереве сервера HTTP.
В качестве адреса машины допустимо использование и IP-адреса:
144.206.160.40/test/test.html
Если сервер протокола HTTP запущен на другой, отличный от 80 порт TCP, то это отражается в адресе:
l44.206.130.137:8080/primorye/index.html
При указании адреса ресурса возможна ссылка на точку внутри файла HTML. Для этого вслед за его именем может быть указана метка внутри документа:
lemoi.phys.dvgu.ru/wst/test.html#first
Символ # отделяет имя документа от имени метки. Другая возможность схемы HTTP – дача параметров. Первоначально предполагалось, что в качестве параметров будут передаваться ключевые слова, но по мере развития механизма сервисных программ (скриптов) в качестве параметров стала передаваться и другая информация.
lemoi.phys.dvgu.ru/wst/isindex.html?keyword1+keyword2
В данном примере предполагается, что документ «isindex.html» — документ с возможностью поиска по ключевым словам. При этом в зависимости от поисковой машины (программы, реализующей поиск) знак "+" будет интерпретироваться либо как «AND», либо как «OR». Вообще говоря, "+" заменяет " " (пробел) и относится к классу неотображаемых символов. Если необходимо передать такой символ в строке параметров, то следует передавать в шестнадцатеричном виде его ASCII-код.
Схема FTP. Данная схема позволяет адресовать файловые архивы FTP из программ-клиентов World Wide Web. При этом программа должна поддерживать протокол FTP. В данной схеме возможно указание не только имени схемы, адреса FTP-архива, но и идентификатора пользователя и даже его пароля. Наиболее часто используется для доступа к публичным архивам FTP:
ftp://dvo.ru/pub/movie.avi
В этом случае записана ссылка на архив «dvo.ru» с идентификатором «anonymous» или «ftp» (анонимный доступ). Если есть необходимость указать идентификатор пользователя и его пароль, то можно это сделать перед адресом машины:
ftp://nobody:password@dvo.ru/users/local/pub
Здесь параметры отделены от адреса машины символом "@", а друг от друга – двоеточием. В некоторых системах можно указать и тип передаваемой информации, но данная возможность не стандартизирована. Следует также учитывать, что употребление идентификатора пользователя и его пароля не рекомендовано, так как данные передаются незашифрованными и могут быть перехвачены. Реальная защита в WWW осуществляется другими средствами и построена на других принципах.
Схема Gopher. Данная схема используется для ссылки на ресурсы распределенной информационной системы Gopher. Схема состоит из идентификатора и пути, в котором указывается адрес Gopher-сервера, тип ресурса и команда Gopher:
gopher://gopher.dvgu.ru:70:/7/kuku
В этом примере осуществляется доступ к gopher-серверу gopher.dvgu.ru через порт 70 для поиска (тип 7) слова «kuku». Следует заметить, что gopher-тип, в данном случае 7, передается не перед командой, а вслед за ней.
Схема MAILTO. Данная схема предназначена для отправки почты по стандарту RFC-822 (стандарт почтового сообщения). Общий вид схемы выглядит так:
mailto:samardak@dvgu.ru
Схема TELNET. По этой схеме осуществляется доступ к ресурсу в режиме удаленного терминала. Обычно клиент вызывает дополнительную программу для работы по протоколу telnet. При использовании этой схемы необходимо указывать идентификатор пользователя, допускается использование пароля. Реально доступ осуществляется к публичным ресурсам, и идентификатор и пароль являются общеизвестными, например их можно узнать в базах данных Hytelnet.
telnet://guest:password@apollo.dvgu.ru
Схема FILE. WWW-технология используется как в сетевом, так и в локальном режимах. Для локального режима используют схему FILE.
file:///C/text/html/index.htm
В данном примере приведено обращение к локальному документу на персональном компьютере MS-DOS или MS-Windows.
Существует еще несколько схем, которые на практике используются редко или находятся в стадии разработки, поэтому останавливаться на них не будем.
Из приведенных выше примеров видно, что спецификация адресов ресурсов URI является довольно общей и позволяет адресовать практически любой ресурс Интернет. При этом число ресурсов может расширяться за счет создания новых схем. Они могут быть похожими на существующие, а могут и отличаться от них. Реальный механизм интерпретации идентификатора ресурса, опирающийся на URI, называется URL (Uniform Resource Locator), и пользователи WWW имеют дело именно с ним.
1.2.3. Регистрация имени домена
Домены в различаются различаются по уровням иерархии, например в “lemoi.phys.dvgu.ru” lemoi – домен третьего уровня, phys – второго, dvgu – первого, а ru — верхнего. Создавая домен, необходимо зарегистрировать его в руководящей организации, тогда имя домена будет включено в имя ее домена. Домены верхнего уровня классифицируют организации по типам (используется в США): gov (government — государственные), edu (educational — образовательные), org (organization — организации), net (главные центры поддержки сети), mil (военные группы), int (международные), com (commercial — коммерческие), (любая страна, географическая единица). В 2004 году были приняты новые типы доменов верхнего уровня:
biz – домен для крупных и средних компаний, продвигающих свой бизнес;
info – информационный домен, который может быть использован для представления своей продукции или услуги в Интернет;
name – индивидуальный домен для представления персоналий в Интернете;
coop – домен для организаций стремящихся к кооперации;
aero – домен для авиакомпаний;
museum – домен для музеев.
Чтобы присоединиться ко всем, кроме государственного домена, необходимо иметь аргументы, соответствующие предъявляемым строгим требованиям. Включение в домен com гораздо проще, однако все-таки нужно правильно определить, к какому из доменов верхнего уровня относится организация.
Имя домена должно иметь смысл, легко запоминаться и вводиться с клавиатуры, а также не использоваться другой организацией в Интернете.
Выбранное подходящее имя регистрируется. Обычно для этого из области Registration Web-страницы InterNIC (http://www.internic.net/) получают текстовый бланк и заполняют его в любом редакторе или текстовом процессоре или заполняют форму WWW, используя программу просмотра Web.
Необходимо сообщить InterNIC о себе некоторые данные. Во-первых, кто будет контактировать с ней по административным, техническим или финансовым вопросам, касающимся домена. Во-вторых, имена и IP-адреса серверов DNS (Domain Name Service), поддерживающих домен.
Заполненная форма отсылается электронной почтой в InterNIC. Через некоторое время поступают два ответа: первый — подтверждение получения запроса, второй — разрешение на использование имени домена.
1.3. Семейство протоколов TCP/IP 1.3.1. Введение в TCP/IP
Протокол в сетевых технологиях определяется как четко регламентированный свод правил, которые одинаково применимы для различных систем (программ, шлюзов, пакетов данных и др.), участвующих в передаче информации. Благодаря протоколам, взаимодействие этих систем происходит по заранее установленному сценарию.
С целью лучшего понимания понятия протокола, рассмотрим один пример, который не имеет отношения к компьютерным сетям. Предположим, что в некотором регионе расположены два предприятия А и Б, которые сотрудничают друг с другом, рис. 10. Делавая активность предприятий базируется на многочисленных договоренностях и соглашениях, таких, например, как регулярные поставки продукции одного предприятия другому. Исходя из этой договоренностьи начальник отдела продаж предприятия А каждый месяц должен посылать сообщение начальнику отдела закупок предприятия В о том, сколько и какого товара они могут поставить в этом месяце. В ответ на это сообщение начальник отдела закупок отправляет заявку на нужный объем продукции во внутренний отдел производства. Такой порядок взаимодействия между начальниками или директорами в данном случае соответствует понятию «протокол уровня директоров». У начальников есть секрктари, через которых отправляются все сообщения.
После того как сообщения поступили секретарям, начальников не не интересуют способы отправки и дальнейшего передвижения письма — обычной или электронной почтой, факсом или курьером. Выбор способа передачи лежит на секретарях, которые решают этот вопрос, не уведомляя об этом начальство, так как их протокол взаимодействия завязан только на передаче сообщений, поступающих сверху, и не касается содержания этих сообщений. После отправки письма, секретари считают свою работу выполненной. Однако хороший секретарь может еще проверить получил ли адресат сообщение.
При решении разных проблем начальники могут взаимодействовать по другому сценарию, но это не отразится на работе секретарей, для которых не важно, какие сообщения отправлять, а важно, чтобы они дошли адресату. Другими словами, мы имеем два уровня – уровень начальников и секретарей, и каждый уровень имеет собственный протокол, который может быть изменен независимо от протокола другого уровня. Так как протоколы независимы друг от друга, то это дает возможность использовать многоуровневый подход.
Перейдя от примера к реальной сети, можно увидеть схожую картину. По мере движения пакета данных по сети на разных последовательных этапах его взаимодействия с другими сетевыми элементами отрабатывают протоколы разных уровней. Полная совокупность таких протоколов, используемых для успешного взаимодействия разных элементов в рамках сети данного типа, называют семейством или стеком. Интернет работает под семейством протоколов TCP/IP, которое имеет многоуровневую структуру. TCP/IP расшифровывается как Transmission Control Protocol/Интернет Protocol (Протокол управления передачей данных/Протокол Интернет).
Структура протоколов TCP/IP имеет четыре основных уровня и приведена на. рис.
Рис… Стек TCP/IP
Самый нижний (уровень IV) соответствует уровню доступа к сети, который работает на основе популярных стандартных протоколах физического и канального уровня, таких, как Ethernet, Token Ring, SLIP, PPP и других. Протоколы этого уровня отвечают за пакетную передачу данных в сети на уровне аппаратных средств.
Следующий уровень (уровень III) обеспечивает межсетевое взаимодействие при передаче пакетов данных из одной подсети в другую. В качестве протокола в стеке задействован протокол IP.
Следующий уровень (уровень II) является основным и работает на базе протокола управления передачей TCP. Этот протокол необходим для надежной передачи сообщений между размещенными на разных машинах прикладными программами за счет образования виртуальных соединений между ними.
Все обозначенные выше уровни можно отнести к «уровню секретарей» из примера, описанного выше. Пользователя («начальника») больше всего интересует правильная работа самого верхнего уровня (уровень I), или «уровня начальников», который называется на языке стека TCP/IP прикладным.
продолжение
--PAGE_BREAK--Так как стек TCP/IP существует достаточно давно, то он включает в себя большое количество протоколов и сервисов прикладного уровня. Наиболее важными и популярными являются следующие протоколы: протокол передачи файлов FTP, протокол Telnet, протокол Gopher для доступа к ресурсам всемирного пространства GopherSpace, и самый известный протокол HTTP для доступа к удаленным гипертекстовым базам данных во всемирный паутине.
Классифицируем протоколы по характеру выполняемых задач.
Транспортные протоколыпредназначены для управления передачей данных между двумя машинами:
· TCP (Transmission Control Protocol). Этот протокол поддерживает передачу данных, которая основана на логическом соединении между передающим и принимающим компьютерами.
· UDP (User Datagram Protocol). Этот протокол обеспечивает передачу данных без установления логического соединения. Другими словами данные отправляются без предварительно установленного соединения между компьютерами получателя и отправителя.
Протоколы маршрутизациипредназначены для обрабатки адресов данных и определения наилучших путей до адресата. Кроме того, они обеспечивают разбиение больших сообщений на несколько маленьких сообщений, которые затем передаются последовательной цепочкой и компонуются в единое целое на компьютере-получателе:
· IP (Internet Protocol). Протокол обеспечивает фактическую передачу данных.
· ICMP (Internet Control Message Protocol). Протокол обрабатывает сообщения состояния для IP протокола, например, ошибки и изменения в сетевых аппаратных средствах, которые влияют на маршрутизацию.
· RIP (Routing Information Protocol). Один из нескольких протоколов для определения наилучшего маршрута доставки сообщения.
· OSPF (Open Shortest Path First). Альтернативный протокол для определения маршрутов.
Протоколы поддержки сетевого адресаиспользуются для идентификации машины с уникальным номером и именем.
· ARP(AddressResolutionProtocol). Протокол определяет уникальные числовые адреса машин в сети.
· DNS(DomainNameSystem). Протокол для определения числовых адресов по именам машин.
· RARP (Reverse Address Resolution Protocol). Протокол для определения адреса машин в сети, но способом, обратным ARP.
Прикладные сервисыпредставляют собой пользоватеьские программы, которые используются для получения доступа к различным услугам.
· ВООТР (BootProtocol). Протокол загружает сетевую машину, читая информацию для начальной загрузки с сервера.
· FTP(FileTransferProtocol). Протокол передачи файлов между компьютерами.
1.3.2. Сетевое взаимодействие «клиент-сервер»
В основу взаимодействия компонентов информационных сервисов Сети в большинстве случаев положена модель «клиент-сервер». Как правило, в качестве клиента выступает программа, которая установлена на компьютере пользователя, а в качестве сервера — программа, установленная у провайдера. В данном контексте под провайдером понимаем организацию или частное лицо, которые ведут (поддерживают) информационные ресурсы.
При этом возможны два варианта организации самой информационной системы, которая обеспечивает доступ к информационному ресурсу. Большинство систем Интернет построены по принципу взаимодействия «каждый с каждым», например система World Wide Wed, т.е. каждый пользователь может напрямую взаимодействовать с каждым сервером без посредников. Такой подход позволяет упростить всю технологическую схему построения системы, однако приводит к порождению большого трафика в Сети. Альтернативный вариант построения системы, например системы Usenet, когда пользователь может взаимодействовать только со «своим» сервером и не может обратиться к произвольному серверу в Сети. Однако доступ он получает ко всей информации, которая присутствует в данной информационной системе, так как серверы обмениваются ею между собой.
В ряде случаев возможен выбор между первым способом реализации информационного обслуживания и вторым, например, это возможно в службе доменных имен DNS. Администратор сервера может настроить его для работы через другой сервер или непосредственно с программами-клиентами. Аналогично настраиваются и специальные серверы-посредники для различных информационных серверов Интернет. Несколько таких схем показано на рис.12.
Рис.12. Различные схемы «Клиент-Сервер» для информационных сервисов Интернет
Принципиальным различием между схемой с посредником и схемой Usenet является то, что при посреднике работа по доступу к ресурсу перекладывается на его плечи. При этом он будет устанавливать соединение с каждым сервером в сети. По схеме Usenet это делать не обязательно, так как информацию в принципе можно получить с любого сервера.
1.3.3. Недостатки протоколов
Проблемы защиты информации являются «врожденными» практически для всех протоколов и служб Интернет.
Система имен доменов (Domain Name System — DNS) представляет собой распределенную базу данных, которая преобразует имена пользователей и хостов в IP-адреса и наоборот. DNS также хранит информацию о структуре сети компании, например количестве компьютеров с IP-адресами в каждом домене. Одной из проблем DNS является то, что эту базу данных очень трудно «скрыть» от неавторизованных пользователей. В результате, DNS часто используется хакерами как источник информации об именах доверенных хостов.
FTP (File Transfer Protocol) обеспечивает передачу текстовых и двоичных файлов, поэтому его часто используют в Интернет для организации совместного доступа к информации. На FTP-серверах хранятся документы, программы, графика и любые другие виды информации. Некоторые FTP-серверы ограничивают доступ пользователей к своим архивам данных с помощью пароля, другие же предоставляют свободный доступ (так называемый анонимный FTP-сервис). Если вы используете опцию анонимного FTP для своего сервера, то должны быть уверены, что на нем хранятся только файлы, предназначенные для свободного распространения.
Sendmail — популярная в Интернет программа электронной почты, использующая для своей работы некоторую сетевую информацию, такую как IP-адрес отправителя. Перехватывая сообщения, отправляемые с помощью Sendmail, хакеры могут использовать эту информацию для нападений, например для спуфинга (подмены адресов).
SMTP (Simple Mail Transfer Protocol) — протокол, позволяющий осуществлять почтовую транспортную службу Интернет. Одна из проблем безопасности, связанная с этим протоколом, состоит в том, что пользователь не может проверить адрес отправителя в заголовке сообщения электронной почты. В результате хакер может послать в вашу сеть большое количество почтовых сообщений, что приведет к перегрузке и блокированию работы вашего почтового сервера.
Telnet — сервис Интернет, при осуществлении которого пользователи должны регистрироваться на сервере Telnet, вводя свое имя и пароль. После аутентификации пользователя его рабочая станция функционирует в режиме «тупого» терминала, подключенного к внешнему хосту. С этого терминала пользователь может вводить команды, которые обеспечивают ему доступ к файлам и возможность запуска программ. Подключившись к серверу Telnet, хакер может сконфигурировать его программу таким образом, чтобы она записывала имена и пароли пользователей.
Как уже говорилось, стек TCP/IP представляет собой набор протоколов, которые используются в Интернет и интрасетях для передачи пакетов между компьютерами. При передаче информация заголовков пакетов может подвергнуться нападению хакеров. Например, хакеры могут подменить адрес отправителя в своих пакетах, после чего они будут смотреться как пакеты, передаваемые авторизованным клиентом.
1.3.4. Программное обеспечение для работы в сети
Для использования информационных ресурсов Интернета необходимо определенное программное обеспечение. Для просмотра html-документов необходима программа, динамически обрабатывающая код HTML и отображающая web-страницы. Такая программа называется браузером (от англ. browser). Выделяют два основных класса браузеров: браузеры с поддержкой отображения графических элементов web-страниц и браузеры без такой поддержки. Большинство современных браузеров работают с графикой, включая flash анимацию и видео.
Самыми популярными браузерами являются Microsoft Internet Explorer и Netscape Navigator, предназначенные для работы в среде Microsoft Windows. Менее распространены Opera, Arache (работает под управлением DOS) и текстовый браузер для UNIX-совместимых платформ под названием Lynx.
Следует отметить, что браузеры имеют разные встроенные интерпретаторы HTML, из-за чего один и тот же html-документ может отображаться в них по-разному. Ощутимые различия наблюдаются не только между клиентским программным обеспечением разных производителей, но и между двумя версиями одной и той же программы. Самые существенные расхождения в алгоритмах обработки кода HTML имеются в двух наиболее популярных браузерах, созданных компаниями, которые никак не могут договориться между собой, чтобы достичь соответствия в отображении их продукцией интернетовских web-страниц. Речь об Интернет Explorer и Netscape Navigator.
Глава II. Интернет-технологии 2.3. Наиболее популярные Интернет-технологии 2.3.1. Язык HTML
Сервис World Wide Web объединяет каналы передачи связной информации по всему земному шару. Язык HTML (HyperText Markup Language) предоставляет простой формат для предоставления этой информации. Для безконфликтной работы необходимо, чтобы все программы, совместимые с WWW, могли поддерживать язык HTML. Сервис WWW использует HTTP протокол, который позволяет передавать кодированную информацию между клиентом и сервером.
Уже не раз в учебнике упоминалось, что гипертекст и гипермедиа являются для WWW фундаментальными технологиями. Если развивать идею гипертекста и включить в него графику, аудио и видео файлы, анимацию, то мы получим, так называемое, гипермедиа.
Язык разметки гипертекста HTML берет свое начало от языка стандартной обобщенной разметки (Standard Generalized Markup Language — SGML). Язык SGML используется для создания структурированных документов, а также языков для их разметки. SGML можно считать глобальным стандартом для описания языков разметки гипертекста, таких, как HTML. Документы SGML являются программно- и аппаратно-независимыми, они не привязаны к какой-либо конкретной программе, компьютеру или устройству вывода. SGML был одобрен ISO (International Standard Organization — Международная организация стандартов) в 1986 г. и является стандартом для многих коммерческих и государственных систем создания документов.
Документ HTML представляет собой обычный текстовый файл, который заключен между последовательностью команд форматирования.
Язык разметки HTML обычно используют для представления:
· новостей, почты, рекламы, текстов;
· меню с опциями;
· результатов запросов к базам данных;
· простых структурированных документов со встроенной графикой;
· обзоров имеющейся информации.
Для описания html-документа используется тэговая модель, которая описывает документ как совокупность тегов-контейнеров, внутри которых заключаются информационные объекты (контент). Язык гипертекстовой разметки — это система для разметки текста с помощью команд форматирования. Нечто, заключенное в , называется тэг, считается командой и не отображается.
Например, используется для начала отображения курсива и для окончания. Некоторые команды требуют наличия начального и конечного тэгов, как например как например (разрыв), этого не требуют. Интерпретация тэгов не зависит от регистра символов; и интерпретируется одинаково.
Следующие шесть строк появляются практически во всех Web-страницах:
Поскольку тэги HTML не чувствительны к регистру, вы можете использовать любую схему преобразования букв в прописные. Некоторые атрибуты тэга чувствительны к регистру, и тогда они будут отображаться так, как этого требует стандарт.
· и отмечают начало и конец страницы.
· и отмечают начало и конец заголовка в неотображаемой браузером части страницы.
· и отмечают отображаемую область страницы.
Когда тэг имеет несколько параметров, они отделяются друг от друга символами пробела, табулятора, конца строки или любой их комбинацией, например:
Первый параметр определяет тип тэга: IMGозначает ссылку на изображение. SRC="picture.gif" показывает URL файла, в котором размещено изображение. Браузер отображает этот файл вместо тэга.
IMGи SRCразделены между собой пробелом. Ниже приведен несколько более сложный тэг:
Браузер отображает все, что расположено между этим тэгом и замыкающим последовательность тэгом красным цветом и относительно малого размера. Без кавычек браузер определил бы атрибут FACE тэга как Arial и потерял бы Narrow как нечто непонятное.
Магическая строка #FF0000 означает красный цвет, поскольку каждая пара шестнадцатиричных цифр отвечает за интенсивность красного, зеленого и голубого в суммарном цвете. FF (255 в десятичной нотации) означает наиболее интенсивный цвет; 00 — нулевой.
Ниже приводятся сайты на которых размещена полная документация по всем возможностям HTML.
Microsoft
http://msdn.microsoft.com/workshop/entry.asp
Netscape
http://developer.netscape.com/library/documentation/communicator/
World Wide Web Consortium
www.w3.org/MarkUp
2.3.2. Таблицы каскадных стилей
Даже с такими тэгами, как (жирный), (курсив) и HTML поддерживает ограниченные возможности в отображении текста. В течении многих лет Web-дизайнеры требовали больших возможностей по управлению текстом и, наконец, дождались появления Cascading Style Sheets (CSS) — таблиц каскадных стилей.
Таблица стилей единожды описывает специфический формат, присваивает ему имя, и далее он употребляется там, где потребуется. В HTML вы можете определить стиль, например, так:
CSS-имена (селекторы), которые начинаются с точки — это определяемые пользователем имена классов. Селекторы, которые начинаются с букв, называются типами и переопределяют встроенные HTML-стили, такие как Р (параграф) или В (жирный шрифт).
Атрибуты класса определяют стиль по имени, которое назначается свойству между тэгами и . Атрибут STYLE определяет свойства CSS для тэга, который его содержит.
Мы определили стиль warning, который применяет для любого текста шрифт Arial Narrow, а если он недоступен, то использует любой рубленый шрифт, доступный браузеру. Текст отображается размером в 10 пунктов и красным цветом.
Заметьте, что синтаксис CSS несколько отличается от HTML. и тэги дают команду браузеру прекратить интерпретацию HTML и начать интерпретировать таблицы стилей.
· !-- и --> — это тэги комментариев в HTML. Если браузер старой версии не может интерпретировать и тэги, то он пропустит все, что заключено в комментарии,
· Имена стилей не имеют параметров; CSS «знает», что .warning— имя стиля, расположенного в данной позиции.
· Параметры стилей заключаются в .
· Параметры стилей отделяются друг от друга точкой с запятой, а не пробелом.
· В качестве оператора присвоения используется двоеточие вместо знака равенства.
продолжение
--PAGE_BREAK--· Атрибут CLASS вызывает предопределенный CSS-стиль. Ниже приведен HTML-код, присваивающий все установки класса warningабзацу:
Атрибут STYLE определяет CSS атрибуты для ранжирования тэгов. Код, приведенный ниже, дает команду отображать текст в рамке шириной в один пиксел:
Свойства таблиц каскадных стилей подвергаются многократным переопределениям, прежде чем браузер отобразит текст. На самом верхнем уровне браузер имеет заданные по умолчанию свойства стиля для каждого тэга HTML. Они могут переопределяться в первую очередь свойствами стиля в секции , затем посредством атрибутов, назначенных контейнерам, таким как диапазоны, разделы, таблицы и абзацы, затем атрибутами, назначенными отдельным тэгам. Поэтому-то таблицы и называются каскадными.
Наследование обеспечивает другой пример каскадирования. Суть в том, что некоторые встроенные селекторы, например как TD, наследуют большинство своих стилевых свойств от других селекторов, таких как Р. И, следовательно, изменение свойств селектора Р повлечет за собой изменение селектора TD.Ссылка.
На приведенных ниже сайтах размещена документация о возможностях и использовании CSS.
Microsoft: msdn.microsoft.com/workshop/author/css/reference/attributes.asp
World Wide Web Consortium: www.w3.org/Style/CSS/
CSS понимает разные единицы измерения для различных устройств: рхдля пикселов, pt для точек, inи cm для дюймов и сантиметров, %для процентов и т. д.
Новшества в управляющих элементах CSS относятся не только к форматированию, но и к позиционированию. Следующие стилевые свойства размещают текст на 50 пикселов от верхнего края страницы и на 100 пикселов от левого края страницы:
И где я теперь?
2.3.3. Использование шрифтов на электронных страницах
В те давние времена, когда принтеры имели всего один шрифт, и тот только с прописными буквами, и выводили текст на перфорированную бумагу стандартного размера, проблем со шрифтами не было. Шрифты на первых персональных компьютерах воспринимались как экзотика, но как только речь зашла о совместимости и переносимости, шрифты стали вечной головной болью Web-дизайнеров и системных администраторов.
Первые текстовые процессоры под Windows позволяли определять шрифты, не инсталлируя их. Потом пользователи возмущались, что шрифты не отображаются. Шрифты стали проклятьем.
Когда Windows стали поддерживать TrueType-шрифты, стало полегче. Соответствующий диалог показываеттолькоте шрифты, которые могут быть отображены, и Windows может отобразить эти шрифты любым размером. CSS предоставляют широкие возможности управления шрифтами. К сожалению, вы никогда не знаете, какие именно шрифты установлены у пользователя, открывшего созданную вами Web-страницу. Круг замкнулся: мы определяем шрифты для ввода, но не для вывода. Шрифты должны размещаться непосредственно на Web-сайтах, чтобы посетители могли загрузить их при необходимости. Тогда не придется конвертировать текст в графику, время загрузки уменьшится, а посетители увидят страницы такими, какими их создал автор. Однажды, я надеюсь, будет найден устраивающий всех способ загрузки шрифтов, так же, как сейчас существует способ загрузки изображений. А пока загляните на следующие Web страницы:
http://www.microsoft.com/opentype— домашняя страница Microsoft, посвященная шрифтам в Web. ОреnТуре — совместная инициатива Microsoft и Adobe, цель которой — разработать единый формат загружаемого шрифта, совместимый с PostScript и TrueType стандартами.
http://www.truedoc.com/ — домашняя страница TrueDoc, изобретения фирмы Bitstream Inc., основателя цифрового набора. Web-дизайнеры могут конвертировать шрифты на своих компьютерах в TrueDoc-файлы и размещать их на Web-сайтах. Удаленные браузеры загружают TrueDoc-файлы и используют их для отображения страниц с этих сайтов.
Одновременно с созданием TrueDoc-файлов вы определяете имя сайта одним из двух возможных способов; указывая абсолютный адрес (http://www.whatever.com) или относительный путь (-/whoever/). Таким образом, использование TrueDoc-файлов для просмотра других сайтов становится невозможным. Bitstream ввела это ограничение для того, чтобы хозяева каждого Web-сайта могли приобретать только те шрифты, которые они используют. К сожалению, если пользователь посещает несколько сайтов, разработанных с использованием одинаковых TrueDoc-шрифтов, шрифты будут загружаться многократно.
Bitstream поддерживает и распространяет несколько TrueDoc-шрифтов свободно, на тот случай, если вы не хотите указывать домашнюю страницу Sitstream как место размещения шрифтов. На их сайте также поддерживается компонент ActiveX, который делает Internet Explorer совместимым с TrueDoc.
www.netscape.com/communicator/version4.0/dynfonts — описывает то, как Netscape поддерживает загружаемые шрифты. В основном Netscape адаптировал TrueDoc-файлы и встроил их в Navigator 4.0 и выше.
http://www.hexmac.com/index2.html— домашняя страница утилиты Typograph, которая конвертирует шрифты в вашей системе в TrueDoc-формат. (Будьте аккуратны, поскольку не со всеми шрифтами разрешены такие преобразования).
2.3.4. Язык VRML
Формат HTML был разработан для представления в WWW статической текстовой и графической информации и позволил приблизить внешний вид WWW-страниц к виду хорошо иллюстрированных журналов. Но аппетит приходит во время еды, и у пользователей WWW возникло естественное желание получать информацию в виде подвижной и трехмерной графики, с которой они привыкли работать на локальных компьютерах (например, проводя досуг за компьютерными играми). Появившийся формат VRML (Virtual Reality Modelling Language, Язык моделирования виртуальной реальности) предназначен для представления подвижных объектов и трехмерного моделирования при работе с сервисом WWW.
Основная идея VRML состоит в том, что вместо готовых растровых изображений по сети от сервера к клиенту передается лишь набор инструкций и данных, позволяющий программе-клиенту синтезировать изображение. Это существенно снижает объем трафика и делает реальной передачу информации о подвижных трехмерных объектах.
В VRML входят описания основных графических примитивов, текстур поверхностей, источников освещения, перемещений. VRML позволяет передать анимацию и синхронизованный с изображением звук, а также организовать интерактивное взаимодействие с пользователем.
2.3.5. Язык XML
Технология XML представляет собой нечто большее, чем просто способ представления Web-страниц, с помощью XML набор документов превращается в базу данных. Содержимое документа XML располагается между стандартными тэгами; столь строгая структура кода позволяет всем приложениям без труда выбирать и использовать в своих целях это содержимое. Каждый документ XML становится хранилищем данных, к которому можно обращаться с запросами подобно тому, как можно было бы обратиться к любой БД. К сожалению, правила, регламентирующие порядок упаковки данных, на Web-страницах и методы обработки этих, данных до сих пор не определены и не систематизированы. Результат? Интернет сегодня представляет собой беспорядочную и причудливую смесь технологий HTML, JavaScript и Java на клиентских системах и крайне широкий набор компилируемых языков и языков сценариев на стороне сервера.
XML позволяет разобраться в этих нагромождениях и, упорядочив хаос, организовать его в единую унифицированную сеть. Данные, которые ранее были бессистемно разбросаны по страницам HTML, теперь размещаются на строго структурированных документах XML. Браузеры пятого поколения, выпущенные компаниями Netscape Communications и Microsoft, поддерживают спецификации XML и способны обрабатывать информацию гораздо эффективнее по сравнению со своими предшественниками, которые манипулировали лишь конструкциями HTML.
Эти данные правильно интерпретируются не только браузерами, но и другими XML-совместимыми приложениями. Новое поколение служб электронного обмена данными (EDI) способно связать при помощи средств XML различные бизнес-процедуры, определить соответствующие API-интерфейсы и форматы сообщений.
Некоторым же она представляется упрощенной версией доброго старого стандартного языка обобщенной разметки SGML, который, собственно, и положил начало HTML. И хотя и в том и в другом утверждении есть доля истины, XML нельзя считать обычным представителем когорты языков гипертекстовой разметки. Данная технология быстро превращается в основную движущую силу развития объектно-ориентированной Паутины.
Строгая дисциплина управления наборами документов лежит в основе большинства операций, требующих особой точности.
Хотя язык HTML создан на основе спецификаций SGML DTD, браузеры никогда не отличались их однозначной интерпретацией. Впрочем, на начальном этапе развития Интернет эту неопределенность можно было считать достоинством. Web-страницы не ограничивали полета творческой фантазии, и любой пользователь мог погрузиться в игру с Web. Но сейчас, когда HTML получил статус официального языка Сети, подобные вольности уже недопустимы.
XML придает технологии SGML дополнительную строгость и точность, не ограничивая возможность манипулирования огромным количеством HTML-страниц, накопленных в Интернет к сегодняшнему дню. Этого удалось добиться за счет упрощения правил определения DTD(спецификации определений типов документов -Document Type Definitions). Таким образом, чтобы добиться совместимости миллиардов уже размещенных в Интернет страниц HTML со спецификациями XML, достаточно приложить минимум усилий.
Вот, например, типичный фрагмент HTML:
imgsrc=/img/fig1.jpg>
Эквивалентная конструкция на языке XML будет выглядеть так:
imgsrc="/img/fig1.jpg"/>
Внесение небольших изменений превращает конструкции HTML в код XML. Заключение атрибута /img/fig1.jpg, представляющего собой ссылку на графический файл fig1.jpg, в кавычки и добавление в конце косой черты позволяет избежать двусмысленности при автоматическом синтаксическом анализе операторов XML. Страницу XML (так же, как и весь документ) можно считать базой данных, поскольку каждое идентифицируемое в процессе синтаксического анализа поле содержит специфическую информацию, которая распознается, обрабатывается и преобразуется в нужный вид другими приложениями.
Интернет Explorer 5.0 способен преобразовать страницу XML в объект, который можно непосредственно обрабатывать средствами таблиц стилей Extensible Stylesheet Language (XSL). Допускается также косвенная обработка за счет извлечения нужных фрагментов страницы при помощи сценариев Microsoft VBScript или ECMAscript и последующего встраивания их в модель Document Object Model браузера. Браузер Netscape версии 5.0 обладает аналогичными возможностями.
Однако браузер решает лишь часть задач. Web-узлы обслуживают массу других бизнес-процедур: с их помощью отслеживается доставка экспресс-отправлений, закупаются товары для офиса, проводятся операции с ценными бумагами. Появляются все новые и новые задачи; некоторые из них выполняются без всякого вмешательства человека.
Со временем XML найдет себе применение при определении служебных API-интерфейсов, предназначенных для интеграции информационных систем деловых партнеров.
На Web-узле английской компании Harvey Bowring Online, специализирующейся на страховании кредитов, используют инструментарий GlobalAccess, разработанный компанией D&B. На каждом этапе работы узла, как данные, так и протоколы запросов и ответов представляются в терминах XML. Это означает следующее. Система может работать где угодно. В технологии электронного обмена данными (EDI) для D&B нет ничего нового. Компания применяет ее уже в течение многих лет. Однако как D&B, так и ее клиенты не могут и, вероятно, не смогут получить глобальный доступ к сетям EDI.
Для обращения к данным применяется протокол HTTP. Поэтому никаких осложнений с межсетевыми экранами в этом случае не возникает.
Для доступа к данным браузер и приложения используют одни и те же унифицированные технологии. Гарантией совместимости является управление протоколами средствами XML DTD.
Интероперабельность. Несмотря на то, что система объединяет сервер WebMethods на узле D&B и набор инструментов D&B на узле Bowring, все ее составные части могут взаимодействовать и с другими средствами, поддерживающими XML.
Для развития объектно-ориентированной WWW предполагалось использовать технологии DCOM, CORBA и Интернет Inter-ORB Protocol. Однако им не удалось справиться с тем, что, оказалось, по силам XML — с его помощью XML можно не только проектировать Web-страницы, но и решать гораздо более сложные задачи.
2.3.6. JavaScript
Для сложных Web-страниц вам понадобится;
· отображать изменяющиеся данные, такие как текущее время пли дата;
· программировать переменное содержание в зависимости от даты, браузера пользователя или других условий;
· изменять внешний вид элементов страницы, если пользователь щелкнул мышью или провел курсор мыши над элементом.
Все, что связано с обработкой прерываний, требует программирования. Для простоты вы вставляете кусочки своих программ в последовательность HTML и CSS-кодов. Вот так:
//-->
Тэг сообщает браузеру, что внутри HTML размещен код JavaScript. Тэг отменяет действие. тэги сообщают браузерам, которые не могут интерпретировать и , что строки кода следует рассматривать как комментарии. Двойная косая черта (//) перед тэгом --> — знак комментария в языке JavaScript; без него JavaScript интерпретирует --> как ошибочный оператор.
При строгой типизации данных каждая переменная имеет один и только один тип данных, который не может быть изменен. Объявленное целым останется целым всегда, объявленное строкой останется строкой всегда. При слабой типизации данных, как в JavaScript, вы можете поместить любое значение в любую переменную, и переменная примет требуемый тип данных.
Document.write— метод, который прописывает HTML в Web-страницу как при программировании вручную. Прописанная «вручную» строка URL= дополняется содержанием переменной document.location (переменная класса документ). В данном случае это адрес текущей Web-страницы.
Каждый JavaScript-оператор должен заканчиваться точкой с запятой. Отсутствие точки с запятой JavaScript считает ошибкой. Логические выражения должны быть заключены в круглые скобки, а блоки операторов -в фигурные скобки. Например, оператор ifбудет выглядеть так.
If (navigator.platform == “Win32”) {
dоcument.write(«Windows»);
winplat = «y»;
}else {
document.write («Other»);
winplat = «n»;
}
Этот фрагмент кода выполняет строки 2 и 3, если свойство platformобъекта navigatorравно Win32, и выполняет строки 5 и 6 в противном случае. JavaScript использует знак == как логический оператор эквивалентности и знак = в качестве оператора присваивания. Попытка сравнения с использованием знака равенства ( = ) — вторая причина ошибок в JavaScript.
Заметьте, что в третьей строке переменная winplat определяется при первом появлении. Если вы перепутаете имя переменной, никаких сообщений об ошибке не последует. JavaScript просто создаст новую переменную. Это третий источник ошибок в JavaScript, поскольку этот язык чувствителен к регистру. Для JavaScript переменные Cool и cool — разные.
Поскольку в JavaScript отсутствует строгое определение типов, переменные принимают тип в зависимости от того, что им присваивается. Если вы храните в переменной число, вы можете использовать переменную как числовую или как строковую. Величины, содержащие нечисловые символы, могут использоваться только как строки.
Для создания объектов более сложных, чем простые переменные, JavaScript требует использования такого оператора:
curDt = new Date();
Создаваемый объект одновременно инициализируется текущей датой. Такой объект наследует множество полезных методов. Например, ниже показано, как использование метода getDayобъекта curDtвозвращает день недели:
curDay = curDt.getDay ()
На этих сайтах размещена полная документация по JavaScript
Microsoft: msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/js56jsoriJScript.asp
продолжение
--PAGE_BREAK--