Nginx
docker上的Nginx - 變化:缺少Accept-Encoding標頭
我正在從 nginx 提供一個靜態網站,該網站在基於 nginx:alpine 基本映像的 docker 容器上執行。
我的 Docker 文件:
FROM nginx:alpine COPY --from=angular-built app/dist/dayTwoApp /usr/share/nginx/html COPY ./default.conf /etc/nginx/conf.d/default.conf
default.conf 文件:
server { listen 80; gzip on; gzip_vary on; gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; root /usr/share/nginx/html; index index.html index.htm; location / { try_files $uri $uri/ /index.html; } }
我在提供的 html 文件的響應中看到了vary : Accept-Encoding標頭(見下文)。
但由於某種原因,我在 js 和 css 響應中看不到標題。
(*) 無效的相關參考資料:
- https://stackoverflow.com/questions/15999606/enable-gzip-compression-with-nginx
- https://stackoverflow.com/questions/6637678/set-vary-accept-encoding-header-nginx
回复詳情:
.html 文件:
js 文件(也適用於 css):
請嘗試添加到您的 nginx 配置中:
gzip_proxied any gzip_types text/plain text/css text/js text/xml text/javascript application/javascript application/x-javascript application/json application/xml application/rss+xml image/svg+xml;
(只有“text/html”類型的響應總是被壓縮的。)