對於不同 docker 映像中的相同網站配置,Nginx 的行為有所不同

對於不同 docker 映像中的相同網站配置,Nginx 的行為有所不同
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;
    }
}

node:14.19.3它與 docker image ( )完美配合nginx/1.14.2,但與node:14-alpine( nginx/1.22.1) 則表現不同:

  • 嘗試訪問index.html(或/)重定向到預設值/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從網站配置中刪除上面的區塊,一切都會完美(只是沒有額外的回應標頭)

相關內容