Веб-сервер и браузер. Взаимодействие.
Все сайты открываются браузерами как html-документы. html-документ может содержать изображения, видеофрагменты, flash-ролики и звуки.
Все современные сайты имеют динамические элементы, то есть фрагменты контента, которые меняются во времени, а так же в зависимости от того, кто именно зашел на страницу, и даже могут редактироваться самими посетителями.
Для того, чтобы эти функциональные элементы работали, необходимо, чтобы сервер, выдающий страницы, имел специализированное программное обеспечение, работающее с базой данных и создающее страницы динамически. (Представление о том, что все страницы всех сайтов, вплоть до выдачи поисковых машин, формируются в html вручную, является примитивным, но крайне распространенным заблуждением.)
Браузер и веб-сервер взаимодействуют по технологии клиент-сервер. После ввода адреса в строку адреса браузер формирует запрос к серверу. Сервер формирует страницу и передает ее браузеру. Браузер выводит страницу пользователю, который своими действиями формирует новый запрос.
Для того, чтобы HTML-страница стала динамической, то есть могла зависеть от поведения человека и/или внешних событий, существует несколько технологий. Первое деление связано с местом осуществления этого оживления: на сервере или на клиенте. Далее деление ведется по методу программирования: с использованием интерпретируемых скриптов или откомпилированных программ.
Сторона клиента | | Сторона сервера | |
Скрипты | Программы | Скрипты | Программы |
| | | отдельные CGI-программы |
JavaScript | Plug-ins | Perl | модули сервера |
JScript | ActiveX | Tcl | ISAPI/NSAPI |
VBScript | Java applets | Shell-код | ActiveX |
| | | Java servlets |