API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) · Урок

Блоки location в Nginx и сопоставление запросов

Освойте блоки location в Nginx и правила сопоставления, определяющие, какая конфигурация обрабатывает каждый входящий запрос.

Урок 4 из 413 шагов

«Блоки location в Nginx и сопоставление запросов» — бесплатный урок API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Location Blocks Matter

A real site serves many paths differently: static files, an API, an admin area. Location blocks let Nginx apply different rules per URL path.

Anatomy of a Location

A location block matches a request URI and contains directives for it.

location /images/ {
  root /var/www;
}

Prefix Matching

By default a location is a prefix match: location /blog matches /blog, /blog/post, and anything starting with it.

location /blog {
  # matches /blog, /blog/, /blog/anything
}

Exact Match with =

The = modifier requires an exact URI. It is fast and great for hot paths like the health endpoint or homepage.

location = /health {
  return 200 'ok';
}

Regex Matching

Use ~ for case-sensitive and ~* for case-insensitive regular expressions, handy for file extensions.

location ~* \.(jpg|png|gif)$ {
  expires 30d;
}

The Matching Priority

Nginx does not just pick the first match. Order of precedence:

  • = exact match wins immediately
  • ^~ prefix stops regex search
  • regex (~/~*) in file order
  • longest plain prefix as fallback

The ^~ Modifier

^~ means: if this prefix is the longest match, use it and skip regex checking. Useful to protect a static directory from regex rules.

location ^~ /static/ {
  root /var/www;
}

Longest Prefix Wins

Among plain prefixes, the longest match is chosen, not the first listed. /api/v2 beats /api for a request to /api/v2/users.

Combining with proxy_pass

Location blocks commonly route to backends. Different paths can proxy to different upstreams.

location /api/ {
  proxy_pass http://127.0.0.1:8080;
}

Nested and Named Locations

Locations can nest inside others, and named locations (@name) are jumped to internally, often for fallbacks like try_files.

location / {
  try_files $uri @app;
}
location @app {
  proxy_pass http://backend;
}

Debugging Matches

When a request hits the wrong block, check: is there an exact or ^~ match stealing it? Is a regex matching unexpectedly? Reload and test with curl -v.

nginx -t && nginx -s reload

Quick Check

Test your location matching knowledge.

Recap

You learned Nginx location matching:

  • Prefix match is the default; = is exact
  • Regex uses ~ and ~*
  • Priority: exact, then ^~, then regex, then longest prefix
  • Longest prefix wins among plain matches
  • Named locations enable fallbacks; test with nginx -t and reload
Можно начать бесплатно

Изучай API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
48

Часто задаваемые вопросы

Урок «Блоки location в Nginx и сопоставление запросов» бесплатный?

Да — полный текст урока «Блоки location в Nginx и сопоставление запросов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), подпишись на CoddyKit PRO. Курс API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) содержит 4 уроков всего.

Чему я научусь в уроке «Блоки location в Nginx и сопоставление запросов»?

Освойте блоки location в Nginx и правила сопоставления, определяющие, какая конфигурация обрабатывает каждый входящий запрос. Ты практикуешь API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?

Предыдущий опыт не требуется. API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Блоки location в Nginx и сопоставление запросов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?

Да. Каждый урок API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Установка и настройка Nginx
  2. Базовая настройка Nginx
  3. Раздача статического содержимого через Nginx
  4. Блоки location в Nginx и сопоставление запросов
← Назад к API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)