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;
}
}
он отлично работает с образом docker node:14.19.3
( nginx/1.14.2
), но с node:14-alpine
( nginx/1.22.1
) он ведет себя по-другому:
- попытка доступа
index.html
(или/
) перенаправляет на default/var/lib/nginx/index.html
(выводит "Добро пожаловать в Nginx!"), хотя/usr/share/nginx/html/index.html
существует и с разрешениями все в порядке - если копировать
/usr/share/nginx/html/index.html
в/usr/share/nginx/html/index.txt
- открывается (http://<<mydomain>/index.txt
) - если копировать
/usr/share/nginx/html/index.html
в/usr/share/nginx/html/i.html
- 404 - не найдено (http://<<mydomain>/i.html
, ну, он просто не может найти его в/var/lib/nginx/i.html
) - если убрать верхний
location
блок из конфигурации сайта, то все работает отлично (просто нет этого лишнего заголовка ответа)