Nginx ведет себя по-разному при одинаковой конфигурации сайта в разных образах Docker

Nginx ведет себя по-разному при одинаковой конфигурации сайта в разных образах Docker
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блок из конфигурации сайта, то все работает отлично (просто нет этого лишнего заголовка ответа)

Связанный контент