Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Використання технолог_й SSI для створення Веб-р...doc
Скачиваний:
1
Добавлен:
07.05.2019
Размер:
73.22 Кб
Скачать

3. Переваги програми ssi

Вище ми розглянули використання технології SSI для полегшення супроводу сайту.  Чому для цього не використовувати зв'язку PHP + MySQL? Звичайно, ці інструменти дозволять вирішити завдання набагато ефективніше і ще більш полегшать супровід ... Якщо ви взагалі уявляєте, що означає цей набір букв. В іншому випадку доведеться витратити на їх вивчення не один тиждень, перш ніж ви зможете приступити до створення свого маленького сайту. SSI набагато простіше і може розглядатися просто як кілька додаткових тегів HTML. 

Крім того, є причини суто економічного характеру. На комерційних хостингах підтримка SSI є практично завжди, навіть в найдешевших тарифах. Тариф з PHP може коштувати в два-три рази дорожче. SSI часто є навіть на безкоштовних хостингах, що не може не радувати власників сторінок типу «Я і моя собака», якщо собак багато. 

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

Перейдемо до інших можливостей SSI, які принципово недоступні «чистому» HTML. Швидше за все, ви бачили на деяких сайтах напис «Останній раз сторінка оновлювалася ...». Якщо це не виверт, реалізована через JavaScript і прив'язана до дати комп'ютера користувача, то реалізувати її в HTML неможливо. У SSI це вирішується просто, потрібно тільки вказати ім'я файлу: 

Останнє оновлення: <!--# flastmod file = "index.shtml" -> 

У вікні браузера ми побачимо щось подібне до: 

Останнє оновлення: Sunday, 30-Mar-2008 18:05:04 Московський час (зима) 

Формат представлення дати можна поміняти, для цього є директива: 

<!--# Config timefmt = "format" -> 

Найбільш вживані значення формату такі: «% D» - дата в форматі 03/30/08, «% r» - час в форматі 18:05:04 PM. 

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

<!--# Printenv -> 

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

<!--# If expr = "УМОВА1" ->

  HTML-код, який буде виводитися, якщо УМОВА1 істино 

<- # Elif expr = " УМОВА2" -> 

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

<- # 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 дуже просто і справа того варта!