Page 196 - 4785
P. 196

ім'я  cgi-bin  (або  Scripts  для  веб-сервера  IIS).  В  цьому
                                       випадку,  якщо  клієнт  запитує  файл  з  каталогу  cgi-bin,
                                       сервер  сприймає  такий  запит  як  команду  на  запуск
                                       сценарію. Файли з інших каталогів інтерпретуються як
                                       HTML-документи;
                                    -  другий  спосіб  використовує  розширення  файлу.  При
                                       налаштуванні  сервера  вказується,  що  файли  з  певними
                                       розширеннями містять коди сценаріїв.
                                   Ідентифікація  по  розширенню  використовується  відносно
                            рідко. Найчастіше всі сценарії поміщаються в / cgi-bin, / Scripts або в
                            інший каталог, спеціально виділений для їх зберігання.
                                   Висновок результатів виконання CGI-сценарію здійснюється
                            надзвичайно  просто.  Для  того  щоб  дані  були  передані  клієнту,
                            достатньо  вивести  їх  в  стандартний  вихідний  потік.  Однак,
                            розробляючи  CGI-сценарій,  не  слід  забувати  про  те,  що  він  все  ж
                            відрізняється від консольної програми і має такі особливості.
                                   Інформація,   передана    клієнту,   повинна   відповідати
                            протоколу HTTP, тобто складатися з заголовка  і  тіла відповіді. Як
                            правило,  отримавши  дані  від  сценарію,  сервер  самостійно  додає
                            перший рядок заголовка.
                                   HTTP / 1.0 200 OK
                                   Формування  інформаційних  полів,  що  входять  до  складу
                            заголовка, - завдання сценарію. Щоб дані, передані сценарієм, були
                            правильно  інтерпретовані  клієнтом,  необхідно,  щоб  в  заголовку
                            було присутнє як мінімум поле Content-type. За заголовком повинна
                            слідувати порожній рядок. При відсутності полів заголовка реакція
                            браузера  буде  непередбачуваною.  В  подібних  випадках  браузер
                            зазвичай  намагається  відобразити  отриману  інформацію  як
                            текстовий файл.
                                   Найприродніший  формат  для  браузера  -  формат  HTML.
                            Результати роботи сценарію зазвичай оформляються у вигляді веб-
                            сторінки,  тобто  повертаються  дані  слід  доповнити  дескрипторами
                            HTML.  Таким  чином,  відповідь  CGI-сценарію  клієнту  зазвичай
                            виглядає так:

                                   <form method="post" action="/cgi-bin/hello.exe">
                                   <input type="submit">


                                                           194
   191   192   193   194   195   196   197   198   199   200   201