Серверные сценарии - Server-side scripting

Серверные сценарии это техника, используемая в Веб-разработка что предполагает использование скрипты на веб-сервере, который производит ответ, настроенный для каждого запроса пользователя (клиента) к веб-сайту. Альтернативой является сам веб-сервер для доставки статическая веб-страница. Сценарии могут быть написаны на любом из ряда доступных языков сценариев на стороне сервера (см. Ниже). Серверные сценарии отличаются от клиентские сценарии где встроенные скрипты, такие как JavaScript, выполняются на стороне клиента в веб-браузер, но оба метода часто используются вместе.

Сценарии на стороне сервера часто используются для предоставления пользователю настраиваемого интерфейса. Эти сценарии могут собирать характеристики клиента для использования при настройке ответа на основе этих характеристик, требований пользователя, прав доступа и т. Д. Сценарии на стороне сервера также позволяют владельцу веб-сайта скрыть исходный код, который генерирует интерфейс, тогда как на стороне клиента сценария, пользователь имеет доступ ко всему коду, полученному клиентом. Обратной стороной использования сценариев на стороне сервера является то, что клиенту необходимо делать дальнейшие запросы по сети к серверу, чтобы показать новую информацию пользователю через веб-браузер. Эти запросы могут замедлить работу пользователя, увеличить нагрузку на сервер и предотвратить использование приложения, когда пользователь отключен от сервера.

Когда сервер обслуживает данные обычно используемым способом, например, в соответствии с HTTP или же FTP протоколы, пользователи могут выбирать из нескольких клиентских программ (большинство современных веб-браузеров могут запрашивать и получать данные, используя оба этих протокола). В случае более специализированных приложений программисты могут написать свой собственный сервер, клиент и протокол связи, которые могут использоваться только друг с другом.

Программы, которые выполняются на локальном компьютере пользователя без отправки или получения данных по сети, не считаются клиентами, и поэтому операции таких программ не будут считаться операциями на стороне клиента.

История

Netscape представила реализацию JavaScript для сценариев на стороне сервера с Netscape Enterprise Server, впервые выпущен в декабре 1994 года (вскоре после выпуска JavaScript для браузеров).[1][2]

Серверные сценарии позже использовались в начале 1995 г. Фред Дюфрен при разработке первого веб-сайта для телеканала Бостон, Массачусетс WCVB. Технология описана в Патент США 5835712. Патент был выдан в 1998 году и сейчас принадлежит Открытая сеть изобретений (OIN). В 2010 году OIN назвал Fred DuFresne a «Заслуженный изобретатель» за его работу над серверными скриптами.

Сегодня различные службы используют сценарии на стороне сервера для доставки результатов клиенту в виде платных или бесплатных услуг. Примером может быть Вольфрам Альфа, который представляет собой вычислительную машину знаний, которая вычисляет результаты вне среды клиента и возвращает вычисленный результат обратно. Чаще всего используется услуга Google проприетарная поисковая система, которая ищет миллионы кешированных результатов, связанных с указанным пользователем ключевым словом, и возвращает заказчику упорядоченный список ссылок. Apple Siri Приложение также использует сценарии на стороне сервера вне веб-приложения. Приложение принимает входные данные, вычисляет результат и возвращает результат клиенту.

Объяснение

В первые дни Интернета сценарии на стороне сервера почти всегда выполнялись с использованием комбинации C программы, Perl скрипты и сценарии оболочки с использованием Общий интерфейс шлюза (CGI). Эти скрипты были выполнены Операционная система, и результаты были возвращены веб-сервером. Многие современные веб-серверы могут напрямую выполнять языки сценариев онлайн, такие как ASP, JSP, Perl, PHP и Рубин либо самим веб-сервером, либо через модули расширения (например, mod_perl или же mod_php ) на веб-сервер. Например, WebDNA включает собственную встроенную систему баз данных. Любая форма сценариев (то есть CGI или прямое выполнение) может использоваться для создания сложных многостраничных сайтов, но прямое выполнение обычно приводит к меньшим накладным расходам из-за меньшего количества вызовов внешних интерпретаторов.

Динамические веб-сайты иногда используют настраиваемые серверы веб-приложений, например Стеклянная рыба, Plack и Python "Базовый HTTP-сервер", хотя некоторые могут не рассматривать это как серверный сценарий. При использовании методов динамического написания сценариев на основе веб-технологий разработчики должны хорошо понимать логическое, временное и физическое разделение между клиентом и сервером. Например, чтобы действие пользователя вызвало выполнение кода на стороне сервера, разработчик, работающий с классическим ASP, должен явно заставить браузер пользователя сделать запрос обратно на веб-сервер. Создание таких взаимодействий может легко занять много времени на разработку и привести к нечитаемому коду.

Серверные скрипты полностью обрабатываются серверами, а не клиентами. Когда клиенты запрашивают страницу, содержащую сценарии на стороне сервера, соответствующий сервер обрабатывает сценарии и возвращает клиенту страницу HTML.

Языки

Доступен ряд языков сценариев на стороне сервера, в том числе:

Смотрите также

Рекомендации

  1. ^ «Руководство по серверному JavaScript». Netscape Communications Corporation. 1998 г.. Получено 2012-04-25.
  2. ^ Майк Морган (1996). «Использование Netscape ™ LiveWire ™, специальная версия». Que.

внешняя ссылка