Нет разницы между статическим или динамическим для браузера.Браузер отправляет HTTP-запрос и получает HTTP-ответ.Если ответ является HTML-страницей, браузер отображает HTML, применяет стили и выполняет код JavaScript, поставляемый со страницей.Эта страница может быть динамической или статической - браузеру все равно!Сторона - это забота - это сторона сервера.Если страница статическая, то HTTP-сервер просто возьмет страницу с диска и отправит ее клиенту в качестве ответа HTTP.Если страница является динамической, то HTTP-сервер вызовет какое-либо приложение и попросит это приложение предоставить запрошенный ресурс.Это приложение может быть модулем PHP для Apache (http-сервер), ASP.net для IIS или даже вашим кодом C ++, который будет генерировать любой контент, который вы хотите.Как именно будет построена страница или ресурс (HTTP-ответ может быть также xml, или изображением и т. Д.), Зависит от используемого приложения (технология на стороне сервера).
Например, если вы используете PHP - HTTP-сервер обнаружит, чтозапрашиваемый ресурс имеет расширение .php, сервер передаст этот файл PHP в модуль PHP для обработки, а результат будет отправлен в качестве ответа клиенту HTTP (браузеру).
Когда пользователь выполняет какое-либо действие, это снова просто обычноHTTP-запрос.HTTP-метод GET и POST (см. Статью о HTTP в Википедии) используется для передачи некоторого ввода с сервера на клиент.Страница может содержать несколько тяжелых JS, которые сделают страницу более похожей на настольное приложение (богатые элементы управления, динамически реагирующие на действия пользователя без запроса к серверу или взаимодействующие с сервером в фоновом режиме), но это не обязательно для веб-приложения, чтобы быть веб-приложением(для динамического сайта).Это может быть старый добрый статический HTML с HTML-формами и некоторым серверным кодом.
Веб-приложение - это абстрактная сущность, которая может состоять из множества HTTP-ресурсов (разные URL-адреса для ответа сервера).Веб-приложение также является клиентским кодом, который связывается с серверным кодом через HTTP с помощью HTTP-клиента (браузера) и HTTP-сервера.Веб-приложение - это не отдельная часть, которая работает только тогда, когда пользователь выполняет какое-либо действие.
Веб-сервис может соответствовать этому описанию - как вещь, которая обычно не заботится о страницах, и появляется только тогда, когда некоторыенеобходимое действие.Это специальный тип веб-приложения, которое предоставляет API через HTTP (обычно).Вы можете запросить некоторый ресурс и передать некоторый параметр, и вы получите ответ с некоторым результатом.Это то же самое веб-приложение, но без страниц.Но веб-сервис обычно является частью большого веб-приложения со страницами или даже другой частью того же веб-приложения (в зависимости от того, как вы на это смотрите).Это может быть та же серверная технология и тот же HTTP-сервер.И нет необходимости создавать веб-сервис, если вы хотите создать какое-либо веб-приложение (динамический веб-сайт).
Серверная часть веб-приложения также может взаимодействовать с некоторой базой данных, но это также не обязательно.На диске может быть настоящая база данных или просто текстовые файлы.А браузер, клиентский код и HTTP-сервер также не заботятся о базе данных или источнике, куда код серверной стороны берет данные.
Кэш, балансировщик нагрузки и т. Д. - это просто дополнительные элементы, которые обычно прозрачны для всего этого общегоstuff.
Файлы cookie передаются с каждым HTTP-запросом на HTTP-сервер, и, если запрашиваемый ресурс не является статической страницей, этот HTTP-сервер будет передавать их далее на серверный код / в приложение (часть).И обычно работает аутентификация и авторизация - куки содержат информацию о сеансе, и есть некоторые данные, связанные с сеансом, на стороне сервера - это может быть идентификатор пользователя, поэтому код на стороне сервера будет распознавать пользователя при каждом запросе.