Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsii_PO_KS.docx
Скачиваний:
24
Добавлен:
21.08.2019
Размер:
645.14 Кб
Скачать
  1. Элементы web-страниц

Какие модули должны присутствовать на главной странице сайта? Рассмотрим самый типичный вариант для среднего сайта средней фирмы или не самый "запущенный" вариант авторской страницы.

Название (сайта или организации)

Логотип (или любой графический знак, который уникальным образом идентифицирует проект или организацию)

Навигационное меню (в простейшем случае это один блок, однако, как мы рассмотрим в следующих выпусках, их может быть несколько в рамках одного проекта и одной страницы проекта).

Данные. Собственно содержание первой страницы.

Второстепенные данные. Это может быть графический баннер партнерского проекта или текстовая информация о спонсорах...

Вы получили ряд прямоугольников, которые требуется разместить на странице (экране).

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

Веб-страница фактически рассматривается как набор прямоугольных блоков, которые выкладываются в определенном порядке. При этом, как правило, данные располагаются по колонкам, поэтому при верстке применяют термин одно-, двух-, трехколонный макет и т.д.

Модульные сетки позволяют упростить верстку сайта, поскольку все материалы разбиваются на отдельные блоки, которые выравниваются по невидимым направляющим линиям. Такие блоки хотя и взаимосвязаны друг с другом, но обычно дозволяют независимое редактирование данных, что упрощает оформление элементов.

  1. Краткий обзор технологий для Интернет- приложений

10-15 лет назад большинство Web-сайтов представляло собой набор статических HTML-страниц. Сегодня подобные сайты по-прежнему встречаются — нередко именно так выполнены небольшие персональные Web-сайты, а также сайты небольших компаний, не претендующие ни на что, кроме размещения относительно небольшого объема редко меняющейся информации. Отметим, однако, что в процессе превращения Интернета из набора информационных ресурсов в инструмент ведения бизнеса технологии создания сайтов существенно изменились — большинство Web-сайтов крупных компаний представляет собой набор приложений, обладающих интерактивностью, средствами персонализации, средствами взаимодействия с клиентами (вплоть до приема заказов и платежей) и партнерами, а нередко — и средствами интеграции с «внутренними» корпоративными приложениями компании. Пользователь, имеющий дело с Web- приложениями (а в последнее время — и с Web-сервисами), общается с ними посредством Интернет-клиентов (чаще всего браузеров, но не только их — существуют и другие типы клиентских приложений, например чат-клиенты). Поэтому уместно отдельно поговорить о том, что может применяться в клиентских приложениях, а что — на Web-серверах. Технологии, применяемые в Web-клиентах

Одним из направлений развития Web-приложений стало размещение некоторой части логики приложения (такой как проверка корректности вводимых данных) в самом Web-клиенте, например в Web-браузере. В частности, современные Web-браузеры способны интерпретировать код на скриптовых языках, выполнять Java-апплеты и элементы управления ActiveX, использовать другие дополнения, такие как Macromedia Flash Player. Рассмотрим все эти возможности браузеров подробнее.

Скриптовые языки

Большинство современных Web-браузеров способно интерпретировать код на скриптовых языках, таких как VBScript и JavaScript. Код на этих языках внедряется в Web-страницу и интерпретируется браузером. Типичный пример применения скриптовых языков — проверка корректности данных, вводимых пользователем в соответствующие поля HTML-формы, непосредственно в процессе ввода или после него, без обращения к Web-серверу. Подобные примеры применения скриптовых языков можно обнаружить при заполнении некоторых анкет и получении сообщений о том, что не заполнены обязательные поля (справедливости ради отметим, что далеко не все анкеты реализованы подобным образом).

Однако есть и другие примеры применения скриптовых языков, реализующи е как чисто дизайнерские идеи, например кнопки, меняющие свой вид при наведении на них курсора, «бегущие строки», так и иную функциональность, например внедренные в Web- страницы средства обращения к поисковым системам, отображение диалоговых панелей, управление другими объектами, встроенными в Web-страницу (например, Java-апплетами или элементами управления ActiveX, о которых будет рассказано ниже).

Отметим, что код, созданный с помощью скриптовых языков, не может работать самостоятельно — он выполняется в адресном пространстве браузера. Кроме того, скриптовые языки содержат ограниченный набор средств (например, они не обладают средствами доступа к файловой системе).

Java-апплеты

Практически все современные браузеры способны отображать и выполнять Java - апплеты — специальные Java-приложения, которые пользователь получает в составе Web- страницы. Эти приложения нередко включаются в состав Web -страниц с целью добавления функциональности, которую сложно или невозможно реализовать с помощью скриптовых языков. Апплеты могут выполняться на всех платформах, для которых доступна виртуальная Java-машина.

Апплеты обычно создаются в соответствии с правилами, оговаривающими период их жизни и способы взаимодействия со своим окружением. Чаще всего эти способы весьма ограниченны (например, такие операции, как считывание и запись файлов, по умолчанию для апплетов запрещены; если же подобные операции необходимы, разрешения на их выполнение для конкретных апплетов и конкретных файлов описываются на клиентском компьютере; сетевой доступ из апплета возможен только к тому компьютеру, с которого он был загружен; запуск других приложений на компьютере пользователя из апплетов невозможен). Однако апплет способен считывать значения параметров (например, цвета, шрифтов, файлов с графическими изображениями, используемыми при выполнении апплета) с содержащей его Web-страницы и в соответствии с этими параметрами изменять свое поведение. Кроме того, параметры апплета можно менять динамически из кода на скриптовых языках, содержащихся в составе той же страницы.

Отметим, что, поскольку апплеты реализуют выполнение кода на компьютере клиента, они в определенной степени являются потенциально опасным содержимым. Именно поэтому все современные браузеры обладают доступными пользователю средствами ограничения возможностей выполнения апплетов.

Элементы управления ActiveX

Большинство современных браузеров (в частности, Microsoft Internet Explorer) могут служить контейнерами для элементов управления ActiveX — специальных COM- серверов, выполняющихся в адресном пространстве браузера и также получаемых в составе Web-страницы.

ActiveX - это архитектура, которая позволяет одному программному компоненту (управляющему элементу ActiveX) взаимодействовать с другими компонентами через сеть (например, Internet). В основе архитектуры ActiveX лежат разработанные Microsoft стандарты Component Object Model (COM) и Distributed COM (DCOM): COM позволяет приложениям взаимодействовать друг с другом локально, а DCOM обеспечивает такое взаимодействие по сети.

ActiveX - это технология, разработанная фирмой Microsoft с целю стандартизации программных компонент. В основе ее лежит COM (Component Object Model - модель компонентного объекта). Это системная технология фирмы Microsoft, представляющая совокупность средств, с помощью которых объекты, разработанные различными разработчиками на разных языках программирования и работающие в разных средах могут взаимодействовать друг с другом без какой-либо модификации их исполняемых модулей (двоичных кодов).

Термин ActiveX заменил термин OLE (Object Linking and Embedding - связывание и внедрение объектов).

Первоначально (примерно с 1991 года) технология OLE предназначалась для связывания и внедрения объектов в Windows-приложениях и получения таким образом составных документов. Она позволила, например, внедрять электронные таблицы EXCEL непосредственно в документы WORD и т.д.

Позднее (примерно с 1993 года) термин OLE стал обозначать совокупность различных технологий, основанных на модели компонентного объекта.

В марте 1996 году Microsoft ввела в обращение термин ActiveX для обозначения средств стандартизации программных компонент на основе COM.

С этого времени происходит быстрый рост продуктов ActiveX. Для обеспечения своевременной информированности разработчиков web -узлов о новых ActiveX компонетах Microsoft использует свой сайт, где размещаются сами компоненты, доступные для скачивания (бесплатно!).

Все ActiveX-компоненты можно разделить на два типа:

  • визуальные, например, Microsoft Agent, Progress Control, Slider Control , календарь, таймер и пр.

  • не воспринимаемые визуально, но обеспечивающие какую -либо функцию интеграции разных по происхождению компонент.

Внедрение ActiveX-компонент в HTML-документ осуществляется с помощью элемента OBJECT.

С помощью элементов управления ActiveX, как и посредством Java-апплетов, можно реализовать любую функциональность, в том числе и неблагоприятную для компьютера пользователя, при этом, в отличие от Java-апплетов, при выполнении элементов управления ActiveX в общем случае нет никаких ограничений на доступ к файлам и иным ресурсам операционной системы и сети, а код, содержащийся в них, выполняется от имени загрузившего их пользователя. Как и Java-апплеты, элементы управления ActiveX могут считывать свои свойства с содержащей их страницы; кроме того, свойства элемента управления ActiveX можно менять динамически из кода на скриптовых языках, содержащихся в составе той же страницы; в том же коде можно обрабатывать события, возникающие в таких элементах управления.

Естественно, Microsoft Internet Explorer обладает средствами ограничения возможностей выполнения элементов управления ActiveX, в том числе управления ими из кода на скриптовых языках. Однако для контроля безопасности их выполнения имеется еще одно средство, называемое электронной цифровой подписью. Цифровая подпись помещается внутрь элемента управления ActiveX, для чего требуется наличие соответствующего электронного сертификата. Электронная подпись, помимо сведений о фирме-производителе, содержит и другую полезную информацию. Так, например, если файл с элементом управления ActiveX после добавления электронной подписи был изменен, то об этом будет немедленно сообщено перед запуском такого элемента управления — при добавлении подписи к элементу управления ActiveX происходит вычисление контрольной суммы соответствующего файла. Отметим, однако, что в России в настоящее время нет авторизованных компаний, которые могли бы выдать электронный сертификат международного образца. Естественно, наличие электронного сертификата не гарантирует отсутствия потенциально опасного содержимого, но, по крайней мере, позволяет клиенту установить его источник.

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

Приложения Macromedia Flash

Приложения Macromedia Flash являются сегодня наиболее популярным расширением функциональности Web-браузеров — с их помощью многие Web-дизайнеры придают своим сайтам интерактивность и оригинальность.

Технология Flash основана на использовании векторной графики в формате Shockwave Flash (SWF). Хотя это далеко не первый векторный формат, создателям SWF удалось найти наиболее удачное сочетание между изобразительными возможностями графики, инструментальными средствами для работы с ней, и механизмом включения результата в Web-страницы. Дополнительным преимуществом SWF является его переносимость, то есть этот формат может использоваться на любой аппаратно­программной платформе (в частности, на компьютерах Macintosh, работающих под управлением операционной системы MacOS, и на компьютерах IBM с ОС Windows). И еще одна особенность SWF: созданные на его основе изображения не только могут быть анимированы, но также дополнены интерактивными элементами и звуковым сопровождением.

Переносимость и возможность создания интерактивных мультимедийных приложений обусловили быстрый рост популярности формата SWF среди Web- дизайнеров. Поэтому почти одновременно с появлением самого формата фирмой Macromedia были созданы встраиваемые компоненты (Plug-In) для двух основных броузеров Сети: Internet Explorer и Netscape Communicator.

Модель безопасности приложений Flash основана на том, что Macromedia Flash Player, как и виртуальная Java-машина, выполняет приложения в ограниченном адресном пространстве, при этом выполняемые приложения не имеют доступа к файловой системе (кроме одного конкретного каталога, используемого Macromedia Flash Player для служебных целей) и другим ресурсам компьютера пользователя; исключение делается для микрофонов и видеокамер, однако пользователь должен дать разрешение на передачу данных, полученных с этих устройств. Доступ к сетевым ресурсам ограничивается доменом, с которого было получено приложение. Отметим, что приложения Flash также могут управляться с помощью кода JavaScript, присутствующего на той же странице. Сам Macromedia Flash Player для Microsoft Internet Explorer является элементом управления ActiveX и использует возможности элементов управления ActiveX для доступа к свойствам приложений Flash из скриптовых языков.

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

В заключение отметим, что перечисленные средства расширения функциональности HTML-страниц могут быть использованы и в динамических страницах, генерируемых серверными Web -приложениями. Так, в последнее время широкое распространение приобрели средства создания Web-приложений, выполняющихся под управлением Web-серверов и генерирующих динамические HTML- страницы с внедренным в них кодом на скриптовых языках, предназначенным для интерпретации браузером.

В отличие от обычной gif-анимации, проектирование флэш-элементов подразумевает тесную интеграцию мультимедийных технологий и скриптового язы ка ActionScript, входящего в комплект стандартной поставки программного приложения Macromedia Flash.

Чем сложнее элементы, тем больше технических проблем с ними возникает. Это непреложная истина. В случае с Flash, камнем преткновения между веб -браузерами и собственно самой технологией стали plug-in модули, используемые для создания мультимедийных объектов. Отсутствие у веб-браузеров поддержки этих модулей приводит к тому, что в автономном режиме некоторые флэш -элементы невозможно просмотреть. В случае с рекламными баннерами это еще можно пережить. Но как быть, если вам необходимо увидеть содержание сайта, полностью реализованного на платформе Flash? Кстати, о флэш-сайтах. На Западе ресурсы, выполненные на основе флэш- технологии не редкость, а посему там давно сформировалась культура создания и использования таких сайтов. В Рунете же пока подобных сайтов не так много, и для этого существует немало объективных причин.

Российские поисковые системы не индексирует флэш -сайты, так как они построены без применения html. Таким образом, подобные ресурсы выпадают из гонки за положение в рейтинге, и тут никакая раскрутка не поможет.

DHTML

Dynamic HTML - усовершенствованная версия HTML, которая поддерживает объектную модель документа (Document Object Model). Наряду с возможностями форматирования DHTML поддерживает условную логику и динамическое выполнение.

Дитамический HTML (Dynamic HTML или DHTML) не является гаким-то oсoбым язышм рaзметки стрaниц. Это всего лишь термин, применяесый для oбoзнaчения HTML - стрaниц с дитамически изменяемым шдержимым.

При пoмoщи DHTML вoзмoжнo изменять и перетягивaть элементы стрaницы, тaкие гак текст или грaфикa, без неoбхoдимoсти гаждый рaз oбнoвлять стрaницу. DHTML тaкже пoзвoляет пoлучить гoрaздo бoльший кoнтрoль нaд рaспoлoжением элементов нa стрaнице - вплoть дo oднoгo пикселa - и пoзвoляет вaм пoместить oдин элемент говерх другoгo или двигaть oдин гад другим.

Реaлизaция DHTML пoкoится a трёх "китaх": непoсредственнo HTML, кaскaдных тaблицaх стилей (Cascade Style Sheets - CSS) и языке сцетариев (JavaScript или VBScript). Эти три кoмпoнентa DHTML связaны между сoбoй oбъектнoй мoделью дoкументa (Document Object Model - DOM), являющейся, го сути, интерфей^м приклaднoгo прoгрaммирoвaния (API). DOM связывaет вoединo три перечесленых кoмпoнентa, придaвaя прoстoму дoкументу HTML нoвoе кaчествo, - вoзмoжнoсть динaмическoгo изменения свoегo сoдержимoгo без перегрузки стрaницы. Симвoлически пoдoбнoе единствo пoкaзaнo нa рисунке.

^стадные тaблицы стилей мoжнo срaвнить сo стилевыми фaйлaми любoгo текстoвoгo редaктoрa. С их пoмoщью oпределяется внешний вид oтoбрaжaемoгo HTML- дoкументa: цвет шрифтa и фoнa дoкументa, сaм шрифт, рaзбивкa текстa и мшгое другoе. Для кaждoгo элемента, зaдaвaемoгo oпределенным тэгoм HTML, мoжнo oпределить свoй стиль oтoбрaжения в oкне брaузерa. Мoжнo сoздaть тaблицу стилей и испoльзoвaть ее для всех дoкументoв, рaспoлoженых нa сервере, что придaст стрoйнoсть и a^orao^ всему Web-сaйту.

Объектнaя мoдель дoкументa делaет все элементы стрaницы прoгрaммируемыми oбъектaми. С ее пoмoщью через языки сцетариев мoжнo пoлучить дoступ и упрaвлять всем, чтo есть в дoкументе. Кaждый элемент HTML дoступен кaк индивидуaльный oбъект, a это oзнaчaет, чтo мoжнo изменить зтачение любoгo пaрaметрa любoгo тэга HTML- стрaницы, и кaк следствие, дoкумент действительнo стaнoвится динaмическим. Любoе действие пoльзoвaтеля (щелчoк кнoпкoй мыши, перемещение мыши в oкне брaузерa или нaжaтие клaвиши клaвиaтуры) oбъектнoй мoделью дoкументa трaктуется кaк убытие, кoтoрoе мoжет быть перехвaченo и oбрaбoтaнo прoцедурoй сценaрия.

DHTML дoстaтoчнo нoвaя технoлoгия, и не все старые брaузеры пoддерживaют oбъектную мoдель дoкументa и кaскaдные тaблицы стилей. Одташ DHTML испoльзует стaндaртные тэги, и гоэтому пoльзoвaтели брaузерoв не пoддерживaющих DOM, прaктически увидят все, что зaдумaнo рaзрaбoтчикoм динaмическoй стрaницы, нo тoлькo в стaтическoм виде.

Технологии создания серверных частей Web-приложений

Как мы уже убедились, возможности, связанные с выполнением кода в Web-клиентах, могут быть существенно ограничены как технологически, так и с помощью администрирования и пользовательских настроек. Это в целом соответствует вполне разумным требованиям безопасности. Именно поэтому, наряду с развитием средств расширения функциональности браузеров, развивались и технологии, связанные с выполнением кода приложений не в браузерах, а на самих Web-серверах. Ниже мы очень кратко рассмотрим наиболее распространенные из них.

CGI

Common Gateway Interface (CGI) — это стандартный интерфейс, позволяющий выполнять серверные приложения, вызываемые через URL. Входной информацией для таких приложений служит содержимое HTTP-заголовка либо тело запроса, в зависимости от применяемого протокола. CGI-приложения генерируют HTML-код, который возвращается браузеру. Отметим, что в свое время широко использовался и термин «CGI- скрипт», происхождение которого объясняется тем, что подобные приложения писались на скриптовых языках типа Perl, выполняющихся, тем не менее, не в браузере, а на сервере. CGI-приложения можно создавать с помощью практически любого средства разработки, генерирующего консольные приложения для операционной системы, под управлением которой функционирует Web-сервер.

Основная проблема всех CGI-приложений заключается в том, что при каждом клиентском запросе сервер загружает это приложение в отдельное адресное пространство, а затем инициирует его выполнение и выгрузку. Эта особенность ограничивает производительность приложений и возможность одновременной обработки большого количества клиентских запросов.

CGI (Common Gateway Interface, общий шлюзовой интерфейс) - это программа, работающая на сервере.

Параметры cgi-скрипт получает через переменные среды окружения (environmental variables). Обычно в качестве языка программирования CGI-сценариев используют PERL (Practical Extraction and Report Languge).

Иногда PERL считают языком, специально разработанным для CGI- программирования, хотя это не совсем так - PERL является многоцелевым языком.

PERL доступен для большинства платформ (хотя "родной" для него платформой является ОС UNIX), удобен и достаточно прост.

ASP

Проблему ограниченной производительности Web -приложений, которые выполняются в отдельном адресном пространстве, можно решить, создав приложение в виде библиотеки, загружающейся в адресное пространство Web-сервера и при необходимости остающейся там для обработки последующих запросов от других клиентов; естественно, в этом случае Web-сервер должен поддерживать загрузку таких библиотек. Подобные приложения для Microsoft Internet Information Servise носят название ISAPI (Internet Server Application Program Interface), а для весьма популярного Web -сервера Apache такие библиотеки называются Apache DSO (Dynamic Shared Objects). Отметим, однако, что при создании как CGI-, так и ISAPI-приложений было довольно сложно отделить задачи Web-дизайна от задач, связанных с реализацией функциональности и логики приложений, — подобные приложения генерируют Web-страницы целиком, поэтому все данные, связанные с дизайном этих страниц, должны в общем случае содержаться внутри исполняемого файла. ASP, JSP, PHP

Очередной шаг в развитии технологий создания Интернет-приложений — появление средств, позволяющих отделить задачи Web -дизайна от задач, связанных с реализацией функциональности приложений. Первой из таких технологий стала Active Server Pages (ASP), построенная на основе ISAPI-фильтра. Основная идея ASP заключается в создании Web-страниц с внедренными в них фрагментами кода на скриптовых языках. Однако, в отличие от рассмотренных выше средств применения скриптовых языков для расширения функциональности браузеров, указанные фрагменты кода интерпретируются не браузером, а сервером (точнее, предназначенной для этого ISAPI-библиотекой), и результат выполнения этих фрагментов кода замещает сам фрагмент кода в той версии страницы, которая передается в пользовательский браузер. Вскоре после ASP появились и другие те хнологии, реализующие идею размещения внутри Web-страницы кода, выполняемого Web-сервером. Наиболее известной из них сегодня является технология JSP (Java Server Pages), основная идея которой — однократная компиляция Java-кода (сервлета) при первом обращении к нему, выполнение методов этого сервлета и помещение результатов выполнения этих методов в набор данных, отправляемых в браузер. Еще одной популярной технологией подобного типа является PHP (Personal Home Pages), которая использует CGI-приложения, интерпретирующие внедренный в HTML-страницу код на скриптовом языке.

ASP .NET

Новейшей версией технологии Active Server Pages является ASP .NET, ключевая в архитектуре Microsoft .NET Framework. Основное отличие этой технологии от ASP с точки зрения архитектуры приложений заключается в том, что код, присутствующий на Web-странице, не интерпретируется, а компилируется и кэшируется, что, естественно, способствует повышению производительности приложений.

С помощью ASP .NET можно создавать Web-приложения и Web-сервисы, которые не только позволяют реализовать динамическую генерацию HTML-страниц, но и интегрируются с серверными компонентами и могут использоваться для решения широкого круга бизнес-задач, возникающих перед разработчиками современных Web- приложений.

В общем случае клиентом Web-сервера может быть не только персональный компьютер, оснащенный обычными Web-клиентами (например, Web-браузером), но и мобильные устройства, отличающиеся ограниченным размером экрана, малым объемом памяти, а нередко и невозможностью отображения графики. Для этих устройств существуют свои протоколы передачи данных (Wireless Access Protocol, WAP) и соответствующие языки разметки (WML, Wireless MarkupLanguage, СHTML, Compact HTML и т.п.). При этом необходимо передавать данные на мобильное устройство в соответствующем формате, для чего нередко создаются специальные сайты (например, поддерживающие WAP и WML). Более удобным представляется создание приложений, которые способны генерировать тот или иной код в зависимости от типа клиента. Именно такой подход и реализован в Microsoft ASP .NET.

SSI

SSI (Server Side Includes, включения на стороне сервера) - это директивы, вставляемые в HTML-код и служащие для передачи указаний серверу.

SSI позволяют "вставлять" фрагменты одних документов в другие. Конечно, это можно сделать непосредственно в текстовом редакторе, но если, например, в несколько документов вставляется один и тот же фрагмент, к тому же часто изменяемый, использовать SSI-вставки много удобнее.

Сервер интерпретирует SSI-директивы и выполняет соответствующие действия. Использование SSI-вставок позволяет динамически формировать странички в зависимости от различных параметров(например, типа браузера).

Преимущества SSI проявляются тем сильнее, чем больше по объему сайт, имеющий повторяющиеся элементы кода на разных страничках.

Для того, чтобы сервер знал, что страничка не обычная, а содержит SSI-директивы, используется специальное расширение: shtml или shtm. (Вообще-то, конфигурация сервера может быть настроена и на другое расширение, но shtml воспринимается всегда (если только на сервере не отключено применение SSI вообще).)

Для того, чтобы указать серверу, какой блок нужно вставить и в каком месте странички, используется специальная форма записи в виде комментария:

<!--#команда параметр-'значение" -->

При просмотре сформированного исходника HTML-файла пользователь не увидит никаких признаков SSI, т.к. браузер получает уже готовый HTML-код.

Первое преимущество SSI с точки зрения дизайнера заключается в том, что при таком подходе web-мастеру, занимающимуся поддержкой сайта, можно не бояться случайно испортить дизайн. Элементы сложной верстки скрыты за счет использования SSI, и поддержка содержимого страничек становится гораздо более легким и приятным делом. Второе, не менее важное преимущество, - это возможность мгновенной замены дизайна сайта, не требующая переделывания страничек. Для смены дизайна достаточно переписать SSI-вставки, формирующие внешний вид сайта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]