3.1.1 Критерії вибору інструментарію
Визначимо основні критерії, за якими ми будемо обирати ту чи іншу систему, мову:
ВЕБ-сервер повинен без додаткових втручань переноситись з однієї платформи на іншу, тим самим забезпечивши гнучкість у плані вибору операційної системи;
Мова описів сценаріїв повинна добре зістиковуватись із ВЕБ-сервером, на який вона встановлюється.
3.1.2 Порівняння опрецаійних систем та мов опису скриптів
Досить часто доводиться зустрічати порівняльні характеристики тих чи інших платформ, мов, середовищ, але частіше за все даний аналіз є необ’єктивним, так як передбачає їх порівняння у окремих випадках. Серед платформ можна обирати лінійки Windows та Unix, так як в основному у мережі Інтернет використовуються саме ці операційні системи для створення ВЕБ-серверів. Окрім них можна згадувати і інші системи, але вони не є настільки розповсюдженими і не настільки часто використовуються. Щодо ВЕБ-серверів, то серед них у порівнянні приймали участь: Apache,IIS, вбудовані ВЕБ-сервера, інтерпретатори мов на стороні сервера, PHP, Perl, ASP/VBScript, Java.
Розглядаючи Unix-системи спробуємо віднайти загальний для усіх них варіант ВЕБ-серверного рішення. Для цього розглянемо системи Solaris 2.6, Linux 2.2.x, RedHat 6.x. Для кожної з них існує достатня кількість потрібних нам серверних рішень. Але для узагальнення налагодження та спроби знайти оптимальне рішення ВЕБ-сервер - мова описів сценаріїв ми зупинимося на варіанті Apache та інтерпретаторі PHP. Цей вибір пояснюється тим, що ВЕБ-сервер Apache з самого початку був створений для Unix-платформ, окрім цього він встановлюється на більшість з платформ цього типу. Крім цього на сьогоднішній день існує варіант даного сервера для Windows - платформ, що найкращим чином обумовлює перехід з однієї платформи на іншу. Щодо інтерпретатора PHP, то деякий час він навіть був вбудований у ВЕБ-сервер Apache, що каже про максимальну сумісність цих двох продуктів. Як і ВЕБ-сервер Apache, інтерпретатор PHP також існує у варіанті, що встановлюється на платформу Windows.
З лінійки Windows - систем розглянемо системи Windows 9x і вище. Настільки широкий вибір дозволить встановити ВЕБ-сервер на довільному персональному комп’ютері з операційною системою Windows. В даному випадку систему можна буде використовувати як для прямого використанні в Інтернеті, так і локально в організації, у мережі Інтранет. Для систем Windows NT та вище існують ВЕБ-серверні рішення IIS, але вони не поширюються на більш старі системи, такі як Windows 9x, для яких існує адаптований варіант ВЕБ-серверу, так званий Persona Web Server. Але загального рішення для усієї лінійки немає, що обумовлює додаткове втручання у налагодження роботи серверу. Тим більше, що даний варіант ВЕБ-серверу не переноситься на інші платформи. Що ж стосується варіанту ВЕБ-серверу Apache, адаптованому під цю платформу, то він досить просто встановлюється та потребує мінімального втручання у налагодження. Крім цього досягається однотипність налагодження для усіх систем даного типу.
HTTP сервер Apache дозволяє:
- підтримка согласування кодировок клієнта та сервера, як при видачі документів так при і безпосередній обробці користувацького вводу при цьому підтримується як GET данні так і POST, як широко будуть використовуватись у нашому додатку.
- видача коректних Content-type:...;charset=...;
- видача при необхідності заголовку Expires: для Proxy серверів;
- видача коректних заголовків Vary: та ETag, в результаті є можливість коректного кеєшування Документів (якщо proxy-cache з підтримкою HTTP/1.1 );
- автоматичне пере направлення клієнтів на URL у вірній кодировці.
У сервері використовується декілька методів согласування кодування клієнту та серверу:
- через заголовки клієнта Accept-Charset: або Accept: text/x-cyrillic... якщо сервер знає що charset, котрий запитує клієнт, то ці заголовки мають більший пріоритет для сервера, невраховаючи налаштування на native charset;
- через пошук імені сервера у назвах однієї з кодованих сторінок;
- через пошук в префіксі запрошеного URI назви однієї з закодованих сторінок;
- через явне вказання відповідності «номер порту - кодування»;
- через кофігурування кодових сторінок по замовченню для різних типів клієнских програм у випадку коли сервер може розпізнати додаток;
- для різних (віртуальних) серверів, або дерикторій окремо.
З виконаного порівняння випливає, що найкращим рішенням є використання ВЕБ-серверу Apache 2.0.55 (Win32) та мови описів сценаріїв PHP 5.1.2 в режимі CGI.
3.1.3 Вибір мови програмування
Головним чинником при проектуванні та вибору мови РНР є практичність. РНР повинен надати програмісту засоби для швидкого і ефективного вирішення поставлених завдань. Практичний характер РНР обумовлений п'ятьма важливими характеристиками:
традиційністю;
простотою;
ефективністю;
безпекою;
гнучкістю.
Існує ще одна «характеристика», яка робить РНР особливо привабливим: він розповсюджується безкоштовно!
PHP - це мова інтерпретації, код якої вбудовується безпосередньо у HTML- сторінки. При запиті користувача ВЕБ - сервер, орієнтуючись по розширенню файлу, запит на який прийшов до нього, встановлює, що даний файл потрібно віддати на аналіз інтерпретатору PHP, який в свою чергу виконує відповідні інструкції та генерує остаточну HTML - сторінку, яку і передає назад ВЕБ - серверу, задача якого - повернути цю сторінку користувачу, щ робив запит. При цьому статична частина документу, що написана на HTML, фактично є шаблоном, інтерпретатор лише змінює ту частину, яка є безпосередньо PHP - інструкцією. Для віддаленого користувача дані сторінки нічим не будуть відрізнятися від звичайних статичних HTML - сторінок, хіба що розширення файлу у рядку адреси може бути не html, а, наприклад php3 чи phtml, але це не обов’язково.
Також важливим плюсом цієї мови програмування є те, що додатки розроблені на ній не потребують значних ресурсів від клієнтських комп’ютерів адже все операції виконуються на сервері, а користувач лише завантажує результат.
0 комментариев