Використання технології SSI для створення високодинамічних web-додатків

Використання технології SSI для автоматичного додавання на web-сторінку вмісту файлу, виведення значень змінних оточення, вбудовування результату виконання CGI-програм. Характеристика директив технології. Застосування до web-додатків даної технології.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык украинский
Дата добавления 04.04.2015
Размер файла 22,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Міністерство освіти і науки, молоді та спорту України

Київський національний торговельно-економічний університет

Кафедра кібернетики та інформаційних систем

Індивідуальне завдання з Web-дизайну

на тему:

"Використання технології SSI для створення високодинамічних web-додатків"

Роботу виконала: Дяченко Марина,

студентка I курсу, 4 групи, ФФБС

Київ 2013

План

  • 1. Що таке SSI?
  • 2. В яких випадках потрібно використовувати технологію SSI?
  • 3. Особливості технології SSI
  • 4. Директиви технології SSI
  • 5. Web-додатки та застосування до них технології SSI
  • Використана література

1. Що таке SSI?

Інтернет - технології в наші дні стають все доступнішими. Відкрити свій сайт в Інтернеті може будь-хто, вибір можливостей - на будь-який смак. Можна копітко виписувати теги в "Блокноті", можна використовувати спеціальні візуальні редактори, можна просто накидати сторінку в Microsoft Word і зберегти у форматі HTML. Словом, "твори, вигадуй, пробуй!". Зовсім не обов'язково бути професійним програмістом або дизайнером, все частіше на арену Інтернету виходять аматори.

Майже кожен непрофесійний сайт починає своє існування у вигляді декількох HTML-документів, пов'язаних між собою перехресними посиланнями. Багато хто так і йдуть в такому стані в інформаційну вічність. Але деякі аматорські сайти все ж стає популярними. Іноді розростаються до десятків і навіть сотень сторінок. Але по суті своїй залишаються набором раз і назавжди сформованих документів.

Сторінка, як правило, складається з декількох блоків, причому частина з них незмінна для всіх сторінок сайту. Це заголовок, навігаційне меню, рекламний блок, підвал сторінки. Якщо щось захочеться змінити в одному з таких постійних блоків, це доведеться вручну зробити на кожній сторінці сайту. Задоволення вельми сумнівне. Часто цікаві ідеї залишаються нереалізованими саме через великий обсяг редагування десятків окремих сторінок. SSI дозволяє значно полегшити цю роботу. Крім того, технологія SSI дозволяє робити ще дещо, принципово не здійсненне засобами HTML. Використовувати SSI просто, хоча знання мови HTML дуже допоможе.

Перш за все, абревіатура SSI розшифровується як Server Side Includes, тобто "включення на стороні сервера". Отже SSI - це директиви, що вставляються в HTML-код і керуючі web-сервером, тобто технологія, що дає можливість реалізувати такі можливості, як висновок у документі того чи іншого тексту залежно від певних умов або згідно з заданим алгоритмом, формувати файл HTML з фрагментів, що динамічно змінюються, або вбудовувати результат роботи CGI у певній його ділянці.

2. В яких випадках потрібно використовувати технологію SSI?

Область застосування SSI досить широка, цю технологію використовують для автоматичного додавання на веб-сторінку вмісту іншого файлу, виведення значень змінних оточення, вбудовування результату виконання CGI-програм і т.д. Одразу слід обумовити, що досить складний сайт краще цілком робити з використанням серверної мови програмування або скористатися готовою автоматизованою системою з управління змісту сайту. SSI ж в основному застосовується для HTML-документів, щоб спростити процес їх створення і розширити можливості. У той же час, поняття "складний сайт" досить розмито, так що можна зробити цілком цікавий і корисний ресурс винятково за допомогою HTML і SSI. Додавання на веб-сторінку вмісту іншого файлу

Основна перевага SSI полягає в тому, що ця технологія дозволяє вставляти вміст текстового документа або HTML-файлу в поточну веб-сторінку. У разі додавання текстового файлу, його вміст вставляється без всякого форматування. Для HTML-документа форматування зберігається, включаючи текст і теги. Як правило, код HTML веб-сторінок на сайті має повторювану структуру. Наприклад, верхня частина ("шапка") і нижня частина ("підвал") для всіх веб-сторінок залишаються зазвичай незмінними.

3. Особливості технології SSI

Щоб детальніше розібратись з вище поставленим питанням, необхідно розглянути певні особливості SSI, отже, для того щоб сервер знав, що сторінка містить SSI-вставки, вона повинна мати спеціальне розширення: *. Shtml або *. Shtm, хоча це визначається конфігурацією сервера. Найчастіше застосовується саме *. Shtml. Про те, що сервер підтримує SSI, зазвичай повідомляється в описі хостингу або тарифу.

Отже, чим же SSI може допомогти при супроводі сайту? Основне полягає в наступному. Будь-який фрагмент, який повторюється на кількох сторінках, ми можемо зберігати на сервері в єдиному екземплярі! Для цього помістимо цей фрагмент в окремий файл, наприклад fragment.html. У цьому файлі не потрібні <html>, <body> та інші атрибути "повноцінного" html-документа. Там повинен бути тільки сам фрагмент коду, який потім буде вставлений на своє місце.

Тепер в будь-якому місці будь-якої сторінки сайту, де цей фрагмент знадобиться, ми пишемо SSI-вставку:

<! - # Include file = "fragment.html" - >

Файл повинен знаходитися в тому ж каталозі, що і основний файл. Якщо потрібно винести всі файли-вставки в окремий каталог, то доведеться використовувати іншу команду, в якій вказується повний шлях до файлу фрагмента щодо поточного каталогу:

<! - # Include virtual = "/ catalog / fragment.html" - >

Таким чином, в основному файлі можна залишити тільки основу (макет) сторінки, наприклад каркасну таблицю і основний текст, а всі постійні блоки додавати через SSI-вставки. Повна сторінка буде формуватися web-сервером "на льоту", ніби з окремих цеглинок. Тим не менш, користувачеві на комп'ютер прийде повна сторінка, без найменших ознак використання SSI. Якщо ви зміните щось у фрагменті, це автоматично відобразиться на всіх сторінках, де він використовується.

Коли сайт вже сформований, доведеться витратити якийсь час, переписуючи сторінки під SSI. Але ця робота себе виправдає. Єдиний недолік - ви не зможете переглянути сайт на своєму комп'ютері. Тобто побачити його можна, але все SSI-вставки будуть пропущені. Браузер інтерпретує їх як коментарі і просто ігнорує. Для налагодження доведеться ставити локальний web-сервер. Але це не така вже велика незручність.

Перейдемо до інших можливостей SSI, які принципово недоступні HTML.

За допомогою SSI можна отримувати доступ до деяких спеціальних значень, які називаються змінними оточення. Наприклад, змінна HTTP_USER_AGENT містить ідентифікатор використовуваного браузера та операційної системи, а REMOTE_ADDR - IP-адреса відвідувача сайту. Отримати список всіх змінних оточення можна SSI-директивою:

<! - # Printenv - >

Позитивним є те, що SSI-директиви містять у собі конструкцію if / else. Повний її синтаксис такий:

<! - # If expr = "УСЛОВІЕ1" - >

HTML-код, який буде виводитися, якщо УСЛОВІЕ1 істинно

< - # Elif expr = "УСЛОВІЕ2" - >

HTML-код, який буде виводитися, якщо УСЛОВІЕ1 помилково, а УСЛОВІЕ2 істинно

< - # Else - >

HTML-код, який буде виводитися, якщо всі умови помилкові

< - # Endif - >

Ми можемо перевіряти версію браузера користувача і видавати йому найбільш підходящий html-код.

Щоб підтримувати статус сайту і сталу кількість користувачів потрібно наприклад, хоча б змінювати рекламний блок на сторінці, видаючи різним відвідувачам різну інформацію. Ось в цьому нам і допоможе SSI-директива if / else. Для цього потрібно тільки підібрати відповідну умову. Найбільш просто прив'язатися до годинників сервера - адже час постійно змінюється. Дістатися до годин сервера напряму не вийде, тому використовуємо змінну оточення DATE_GMT. У списку форматів часу використовуємо "% S" - лише секунди. Тепер в нашому розпорядженні є все необхідне. Вставляємо SSI-код:

<! - # Config timefmt = "% S" - >

<! - # If expr = " ($ DATE_GMT <20)" - >

Рекламний блок 1

<! - # Elif expr = " ($ DATE_GMT <40)" - >

Рекламний блок 2

<! - # Else - >

Рекламний блок 3

<! - # Endif - >

У нас вийшов рекламний блок, який змінюється три рази в хвилину. Відвідувачі на сайт заходять безсистемно, тому можна вважати, що кожен отримує випадкову рекламу. Кількість умов можна збільшити, хоч по одному на кожну секунду. А можна використовувати формат "% M" і змінювати рекламу кілька разів на годину.

Рішення про те, коли використовувати SSI, і коли сторінка повністю генерується програмою, складається зазвичай у питанні про те, наскільки сторінка є статичною, і скільки разів необхідно проводити повторну оцінку, коли звертаються до сторінки. Технологія SSI чудовий спосіб для додавання маленьких шматочків інформації, наприклад, поточного часу. Однак, якщо велика частина сторінки генерується під час звернення до неї, то краще пошукати інше рішення.

4. Директиви технології SSI

Існують такі SSI-директиви:

echo var - виводить значення змінної оточення

<! - # echo var="REMOTE_ADDR" - > - виводить IP користувача

<! - #echo var="HTTP_USER_AGENT" - > - виводить браузер користувача

<! - #echo var="SERVER_NAME" - > - виводить ім'я сервера

<! - #echo var="HTTP_REFERER" - > - виводить адресу сторінки, з якої користувач перейшов на поточну

include file або include virtual - вставляє вміст вказаного файлу в html-сторінку

<! - #include file=”{назва файлу}” - > - вставляє лише ті файли, які знаходяться у тій же директорії, що й вебсторінка

<! - #include file=”{віртуальна адреса файлу}/{назва файлу}” - > - вставляє файли, які знаходяться у іншій директорії

fsize file - вставляє розмір вказаного файлу

<! - #fsize file="{назва файлу}" - >

flastmod file - вставляє дату останньої модифікації вказаного файлу

<! - #flastmod file="{назва файлу}" - >

exec cmd - запускає зовнішню команду

<! - #exec cmd="{команда}" - > - фактично виконує команди через командну стрічку, наприклад <! - #exec cmd="ls - lsa" - >

exec cgi - запускає зовнішній CGI-скрипт

<! - #exec cgi="{шлях до файлу}/{назва файлу. cgi}" - > - може використовуватися не лише з CGI-скриптом, але й з будь-яким іншим

config errmsg - замінює стандартне повідомлення про помилку на повідомлення, введене користувачем

<! - #config errmsg="{нове повідомлення про помилку}" - > - повідомлення про помилку виникає при неправильному виконанні SSI-директиви і виводиться на сторінці у вигляді тексту, замість виконаної директиви

config sizeftm - змінює формат виведення розміру файлу

<! - #config sizefmt="{параметр}" - >

допустимі параметри:

Abbrev - виводить розмір файлу у кілобайтах

Bytes - виводить розмір файлу у байтах

config timeftm - змінює формат виведення дати і часу

<! - #config timefmt="{параметр}" - >

допустимі параметри:

%a - абревіатура назви дня тижня

%A - повна назва дня тижня

%b - абревіатура назви місяця

%B - повна назва місяця

%d - день місяця двома цифрами, тобто замість "1" виводиться "01"

%D - дата в форматі "місяць/день/рік", тобто "%m/%d/%y"

%e - день місяця у форматі "1", без "0" на початку

%H - години в форматі 24

%I - години в форматі 12

%j - день року

%m - номер місяця

%M - хвилини

%p - виводить "am” або "pm”, в залежності від половини доби

%r - час у форматі "години в форматі 12/хвилини/секунди" тобто "%I/%M/%S"

%S - секунди

%s - час в секундах з 01.01.1970

%T - час у форматі "години в форматі 12/хвилини/секунди” тобто "%H/%M/%S”

%U - тиждень року

%w - номер дня тижня

%y - рік у форматі РР

%Y - вік у форматі РРРР

%Z - часова зона

printenv - виводить всі змінні оточення

<! - #printenv - > - ця директива параметрів не має

set var - встановлює значення змінної оточення

<! - #set var="{ім'я змінної}" value="{значення}" - -> - наприклад <! - #set var="SERVER_NAME" value="www.dhls.ru" - >

if/else - виводить сторінку за вказаних умов

<! - #if expr="{умова1}" - > {html-код} - html-код виконується, якщо умова1 = true < - #elif expr="{умова2}" - > { html-код } - html-код виконується, якщо умова1 = false, а умова1 = true < - #else - > { html-код } - html-код виконується, якщо перші дві умови = false < - #endif - >

5. Web-додатки та застосування до них технології SSI

Web-додаток - це клієнт-серверний додаток, в якому клієнтом виступає браузер, а сервером - веб-сервер. Логіка веб-додатків розподілена між сервером і клієнтом, зберігання даних здійснюється, переважно, на сервері, обмін інформацією відбувається по мережі. Одним з переваг такого підходу є той факт, що клієнти не залежать від конкретної операційної системи користувача, тому веб-додатки є міжплатформними сервісами. Згідно з означення і певних теоретичних знань, можна виділити певні "+" додатків:

- Додаток знаходиться в одному місці;

- Користувачеві не потрібна ніяка програма;

- Користувач не є адміністратором;

- У ролі адміністратора виступає розробник додатку;

- Додаток не вимагає нічого від користувача

- Простота і надійність тощо.

За допомогою SSI-директив можна створювати динамічні веб-сторінки, виводити на екран поточну дату, відомості про користувача і т.д.

Підтримка сервером провайдера SSI (Server Side Includes, вставки на стороні сервера). Використання SSI дозволяє Web-серверу вставляти невеликі обсяги динамічних даних безпосередньо в HTML-документ, що пересилає користувачеві. Запитана HTML-сторінка "проглядається" у пошуках елементів SSI. Виявивши такий елемент, сервер вставляє необхідну динамічну інформацію. За допомогою SSI можна включати один файл до складу іншого, виконувати CGI-сценарії й передавати іншу інформацію. Необхідно уточнити, які саме функції SSI підтримуються на сервері провайдера.

Переваги SSI проявляються, коли нам потрібно підтримувати досить великий за обсягом сайт, що має певну структуру й повторювані елементи коду на всіх сторінках.

web додаток директива програма

Використана література

1. Підручник Б. Леонтьев Web-дизайн тонкости, хитрости и секреты 640 ст.

2. http://fcss. ukma. kiev.ua/courses/IN. B.24/_2011/grp6/_2/ref/ref.html (Мова для динамічної збірки веб сторінок SSI (server side includes))

3. http://citforum.ru/internet/html/ssi_exmpl. shtml (SSI в примерах)

4. http://do. bti. secna.ru/lib/book/p_11.html (технология SSI в примерах)

5. uk. wikipedia.org/wiki/SSI (SSI)

Размещено на Allbest.ru


Подобные документы

  • Поняття про бездротові мережні технології та способи передачі даних. Переваги та недоліки використання бездротових мереж. Технології мобільного зв'язку. Wi-Fi: історія, розвиток, властивості, користувачі. Підключення бездротового мережевого адаптера.

    реферат [2,0 M], добавлен 28.11.2015

  • Поняття та призначення технології скрінкастінгу. Огляд програм та сервісів для запису відео з екрану монітора. Основні концепції створення додатків у середовищі Wіndows. Особливості написання програм у середовищі Delphі. Програмна реалізація системи.

    дипломная работа [8,5 M], добавлен 22.10.2012

  • Основні поняття мультимедіа технології, їх різновиди та функціональні особливості, області застосування. Програма Macromedia Flash, її характеристика та особливості. Огляд даної технології, робота з текстом і звуком, можливі сценарії, застосування в web.

    дипломная работа [285,0 K], добавлен 10.11.2010

  • Аналіз особливостей конвертації файлів графічних форматів з використанням технології dotNet і створення системи, яка дозволяє наочно проілюструвати принципи програмування з використанням особливостей цієї платформи. Етапи створення windows-додатків.

    дипломная работа [3,1 M], добавлен 22.10.2012

  • Зчитування числової інформації з файлу DATA.txt, аналізування, обробка та виконання графічного відображення. Редагування файлу тексту програми. Метод відображення кнопки з надписом на екрані. Створення нових класів на основі інших, вже створених.

    курсовая работа [196,2 K], добавлен 14.03.2013

  • Дослідження сутності технології Drag&Drop та особливостей її застосування. Властивості та події об'єктів Delphi, які використовуються при програмуванні технології Drag&Drop. Призначення обробників подій OnDragOver та OnDragDrop. Контекстна підказка.

    лабораторная работа [14,4 K], добавлен 20.03.2011

  • Вивчення технологій програмування Internet-сайтів. Розробка інтерактивного інтерфейсу Web-додатків засобами бібліотеки Codeigniter. Інтернет-проекти на основі Ajax-технології. Обробка запиту засобами Codeigniter. Асинхронний обмін даними способами Ajax.

    курсовая работа [1,3 M], добавлен 12.06.2014

  • Виготовлення фотоформ на базі електронного насвітлювального устаткування. Впровадження в поліграфії скорочених технологічних схем. Використання "computer-to-plate" у малій друкарні. Системи управління якістю обробки кольорової графічної інформації.

    реферат [1,4 M], добавлен 09.02.2011

  • Використання dataGridView при роботі з даними файлів. Програмний код основного модуля з поясненнями. Створення додаткових форм і меню. Технології Visual Studio зі створення багатомодульних проектів, технології опрацювання даних, які зберігаються у файлах.

    дипломная работа [1,9 M], добавлен 30.01.2016

  • Історія виникнення комерційних додатків для комп'ютеризації повсякденних ділових операцій. Загальні відомості про сховища даних, їх основні характеристики. Класифікація сховищ інформації, компоненти їх архітектури, технології та засоби використання.

    реферат [373,9 K], добавлен 10.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.