Questão de Programação — Web — CESPE / CEBRASPE 2023
Programação›Web
Código
ce156117
Banca
CESPE / CEBRASPE
Órgão
MPE-RO
Ano
2023
Nível
Superior
Cargo
Analista Programador
A seguir, é apresentada uma configuração do Nginx em sua última versão estável.server {root /www/data;location / {}location ~ / images / {}location ~ \.(mp3mp4){root /www/media; }}A partir dessa configuração, infere-se que, se a URL terminar com a extensão .mp3 ou .mp4, o Nginx
Arecusará servir esses tipos de arquivo.
Bignorará a diretriz location.
Cbuscará pelo arquivo no root /www/media.
Dvarrerá primeiro o /images buscando o arquivo.
Eassumirá o root /www/data como o ponto de controle.
Revelar gabarito e comentário▾
GabaritoC — buscará pelo arquivo no root /www/media.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Nginx: configuração de location e diretiva root
Gabarito: letra C. Ao receber uma requisição cujo URI termina com .mp3 ou .mp4, o Nginx aplica a location regex ~ \.(mp3|mp4)$ (com a sintaxe correta), que define root /www/media. Portanto, o servidor buscará o arquivo nesse diretório, e não no root do bloco server.
A configuração apresentada possui um bloco server com root /www/data; e três locations:
location / { } (prefixo, casa qualquer URI)
location ~ /images/ { } (regex, casa URIs contendo /images/)
location ~ \.(mp3|mp4){ root /www/media; } (regex, casa URIs terminadas em .mp3 ou .mp4; note que falta o cifrão $ e a barra invertida no ponto, mas o intuito é esse)
No processamento de locations do Nginx, primeiro verificam-se locations de prefixo (a mais longa é lembrada). Depois, as regex são verificadas em ordem. Se uma regex casa, ela é usada. Para um arquivo .mp3 ou .mp4, a terceira location casa, e sua diretiva root /www/media substitui o root do bloco server.
1Requisição recebida
2Verifica locations de prefixo
3Guarda a prefixo mais longa
4Verifica regex em ordem
5Se regex casa, usa seu root
6Resposta com o root definido
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Não recusa; ele atende a requisição com o root específico.
Alternativa B — ❌ Incorreta
A diretriz location é aplicada, não ignorada.
Alternativa C — ✅ Correta ⟵ GABARITO
Exatamente o que ocorre: o Nginx busca o arquivo em /www/media.
Alternativa D — ❌ Incorreta
A location ~/images/ só é acionada para URIs que contenham /images/. Um arquivo .mp3 genérico não contém, portanto não há varredura em /images.
Alternativa E — ❌ Incorreta
O root /www/data é substituído pelo root /www/media definido na location que casa.
PEGA ESSA DICA!
Em provas de Nginx, lembre-se da precedência de locations: padrão = prefixo (mais longa) → regex (em ordem). No bloco, cada location pode sobrescrever diretivas como root. A regex ~ \.(ext)$ é muito usada para tratar arquivos estáticos.