Серверная сторона

Оригинальное название: server-side

Коротко

Часть веб-приложения, которая работает на сервере: принимает запросы, обращается к базе данных, проверяет права и данные, формирует ответ и отправляет его браузеру.

Что такое «Серверная сторона»

Каждый запрос страницы проходит две среды. На сервере выполняется код на PHP, Python, Node.js или другом языке: он достаёт товары из базы, считает скидку, собирает HTML или JSON. В браузере, на клиентской стороне, этот ответ показывается и оживляется скриптами. Пользователь видит только результат серверной работы, но не сам код.

WordPress и 1С-Битрикс — классические серверные системы: страница целиком собирается на PHP и уходит браузеру готовой. Современные JavaScript-фреймворки тоже умеют серверный рендеринг: первый HTML формируется на сервере, а потом в браузере к нему подключается интерактивность.

Что должно оставаться на сервере

  • Секреты. Пароли к базе, ключи платёжных систем и API. Всё, что попало в JavaScript, может прочитать любой посетитель.
  • Проверка данных. Проверку формы в браузере легко обойти, отправив запрос напрямую. Окончательная проверка — только на сервере.
  • Права доступа. Скрытая кнопка «Удалить» не защищает: сервер должен сам проверить, что у пользователя есть право на действие.
  • Расчёты, от которых зависят деньги. Итоговая сумма заказа пересчитывается на сервере, а не берётся из запроса.

Пример: обработчик формы в WordPress

add_action( 'wp_ajax_subscribe', 'site_subscribe' );
add_action( 'wp_ajax_nopriv_subscribe', 'site_subscribe' );

function site_subscribe() {
  check_ajax_referer( 'subscribe' );
  $email = sanitize_email( wp_unslash( $_POST['email'] ?? '' ) );
  if ( ! is_email( $email ) ) {
    wp_send_json_error( 'Некорректный адрес', 400 );
  }
  // сохранить подписку
  wp_send_json_success();
}

Даже если в форме стоит type="email", сервер проверяет адрес заново и сверяет одноразовый ключ, защищающий от подделки запроса.

Плюсы и цена серверного подхода

Готовый HTML быстрее показывается и проще читается поисковыми роботами. Зато каждый запрос нагружает сервер, и без кеширования популярная страница может упереться в ресурсы хостинга. Поэтому серверную часть почти всегда дополняют кешем страниц и объектов. Разработкой такой логики занимается PHP и backend-разработка.

Обновлено:

Все термины раздела «Frontend»

Что будем искать? Например,Продвижение