nginx site config
server {
listen 80;
server_name _;
server_tokens off;
gzip_static on;
location ~* \.(html)$ {
add_header 'X-XSS-Protection' '1';
}
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
}
funciona perfeitamente com docker image node:14.19.3
( nginx/1.14.2
), mas com node:14-alpine
( nginx/1.22.1
) se comporta de maneira diferente:
- tentando acessar
index.html
(ou/
) redireciona para o padrão/var/lib/nginx/index.html
(renderiza "Bem-vindo ao Nginx!"), embora/usr/share/nginx/html/index.html
exista e com permissões esteja tudo bem - se copiar
/usr/share/nginx/html/index.html
para/usr/share/nginx/html/index.txt
- é aberto (http://<<mydomain>/index.txt
) - se copiar
/usr/share/nginx/html/index.html
para/usr/share/nginx/html/i.html
-404 - não encontrado (http://<<mydomain>/i.html
bem, simplesmente não consigo encontrá-lo/var/lib/nginx/i.html
) - se remover o
location
bloco superior da configuração do site, tudo funcionará perfeitamente (simplesmente não há aquele cabeçalho de resposta extra)