Vấn đề
Tôi đang sử dụng IIS 10 để phục vụ ứng dụng web .NET. Tôi đã bật Nén tĩnh trên máy chủ IIS (như mặc định). Ứng dụng này chứa một tệp CSS lớn, tệp này cần được nén, nhưng mặc dù kích hoạt tính năng nén, phiên bản không nén đang được tải xuống trình duyệt.
Ảnh chụp màn hình từ bảng điều khiển dành cho nhà phát triển:
Làm cách nào để máy chủ gửi phiên bản nén của tệp?
Các bước gỡ lỗi đã thực hiện
Trình duyệt gửi đúng Mã hóa chấp nhận
tiêu đề:
Trên máy chủ, bên cạnh tệp 500 kB của tôi ant-design-blazor.css
, các tệp sau đã được tạo:
kiến-thiết kế-blazor.css.br
- 46 kB
kiến-thiết kế-blazor.css.gz
- 63 kB
Tôi đã kiểm tra yêu cầu trong nhật ký yêu cầu không thành công và thấy rằng StaticCompressionModule đang được gọi:
Tôi cũng đã thêm thuộc tính staticCompressionIgnoreHitFrequency="true"
đến <httpCompression>
trong applicationHost.config, vì vậy toàn bộ phần bây giờ trông như thế này:
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files" staticCompressionIgnoreHitFrequency="true">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="application/atom+xml" enabled="true" />
<add mimeType="application/xaml+xml" enabled="true" />
<add mimeType="image/svg+xml" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
</httpCompression>
Bất kỳ ý tưởng tại sao nén không hoạt động đúng?