Автор работы: Пользователь скрыл имя, 17 Ноября 2012 в 20:18, контрольная работа
Как было сказано выше, РНР можно компилировать
в виде самостоятельного интерпретатора CGI
как модуль Apache.
ASP имеет
сходство с РНР, сочетая HTML,
сценарии и компоненты на
Active Server Page может быть написана с использованием HTML, Jscript (вариант JavaScript, созданный Microsoft) и VBScript. Благодаря использованию сценариев, Active Server Page может иметь доступ к компонентам на стороне сервера. Компоненты можно создавать на любом языке, который предоставляет интерфейс к СОМ (спецификация компонентов, разработанной Microsoft). Несомненным; недостатком активных серверных страниц является то, что их можно использовать только с веб-сервером Microsoft (US, PWS) под операционными системами Microsoft (Win9x, WinNT). Существуют переносы на другие платформы и веб-серверы, но отсутствие широкой поддержки СОМ снижает их эффективность.
Java-сервлеты (Java Servlets) и JavaServer Pages (JSP) являются технологиями, применяемыми на стороне сервера и использующими язык Java. Недавно Sun представила ряд новых API, позволяющих подключать программы к корпоративным службам и данным. Java Servlet API является одним из краеугольных камней этих расширений платформы Java, предоставляя мощный способ создания динамического содержания и расширения функциональности веб-серверов.
Сервлет Java является программой, выполняемой на стороне сервера, обслуживающей запросы HTTP и возвращающей результаты в виде ответа HTTP. В этом отношении она очень похожа на CGI, но на этом сходство и заканчивается. Хорошей аналогией сервлета является невидимый апплет, выполняемый на веб-сервере. Его жизненный цикл аналогичен жизненному циклу апплета, а выполняется он внутри виртуальной машины Java (JVM).
JavaServer Pages (JSP) аналогичны активным серверным страницам Microsoft (ASP). Страница JavaServer содержит HTML, код Java и компоненты JavaBean. JSP позволяет встраивать в страницы компоненты и обеспечивать выполнение ими работы по генерации страницы, посылаемой в конечном итоге клиенту. При запросе пользователем файла JSP веб-сервер сначала генерирует соответствующий сервлет, если его еще не существует. Затем веб-сервер запускает сервлет и возвращает созданное им содержание броузеру.
JavaServer Pages и Java Servlets страдают тем же недостатком, что и язык Java, используемый на стороне клиента: Java относительно сложен для изучения программистами-новичками.
Последняя из рассматриваемых нами технологий на стороне сервера служит темой данной книги: РНР. РНР был разработан в 1994 году Расмусом Лер-дорфом (Rasmus Lerdorf) с целью отслеживания тех, кто просматривал его электронное резюме, и был выпущен на следующий год под названием Personal Home Page Tools (средства разработки личной домашней страницы). Позднее в том же году он был переработан и объединен с интерпретатором форм HTML Form Interpreter, получив название PHP/FI Version 2. Популярность продукта быстро росла, и в середине 1997 года РНР перестал быть личным проектом Расмуса Лердорфа, превратившись в важную сетевую технологию. Зив Сураски (Zeev Suraski) и Энди Гутмане (Andi Gutmans) полностью переписали синтаксический анализатор, и в июне 1998 года был выпущен РНР 3..
РНР работает аналогично JSP и ASP: разделы сценария заключаются в теги <?php.. ?> и встраиваются в страницу HTML. Эти сценарии выполняются на сервере перед тем, как послать страницу броузеру, поэтому проблемы поддержки броузером РНР не существует. Однако, в отличие от ASP, РНР является независимым от платформы, и существуют различные версии для разных вариантов Windows, Unix и Linux, а также ряда веб-серверов, в том числе Apache и IIS. Определяющее значение имеет то, что он является бесплатным продуктом с открытым кодом (open source).
Обработка и генерация веб-страниц на стороне сервера имеет ряд преимуществ перед технологиями, используемыми только на стороне клиента:
Информация о работе Сравнение РНР как интерпретатора CGI и как модуля Apache