Подтвердить что ты не робот

Azure CDN + Asp.net MVC Cloud Service сжатие для неработающих пакетов

Я использую Azure CDN, который указывает на мою службу Azure Cloud. Я включил пакет для моих файлов JS и CSS, а в BundleConfig я установил bundles.UseCdn = true.

Все работает нормально, за исключением того, что пакеты JS и CSS, возвращаемые через CDN, не сжимаются. Если я не использую CDN, пакеты возвращаются сжатыми (я вижу, что Content-Encoding - gzip).

Я включил сжатие на моем CDN, как вы можете видеть на рис. ниже:

введите описание изображения здесь

И в моем ASP.net MVC сжатие web.config также включено, и оно выглядит так:

 <urlCompression doStaticCompression="true" doDynamicCompression="true" />
  <httpCompression>
    <dynamicTypes>
    <clear/>
      <add mimeType="text/*" enabled="true" />
      <add mimeType="message/*" enabled="true" />
      <add mimeType="application/x-javascript" enabled="true" />
      <add mimeType="text/javascript" enabled="true" />
      <add mimeType="text/css" enabled="true" />
      <add mimeType="application/json" enabled="true" />

      <!-- HERE -->
      <add mimeType="image/svg+xml" enabled="true" />
      <add mimeType="image/png" enabled="true" />
      <add mimeType="image/jpg" enabled="true" />
      <add mimeType="image/jpeg" enabled="true" />
      <add mimeType="application/font-woff2" enabled="true" />
      <add mimeType="application/x-font-ttf" enabled="true" />
      <add mimeType="application/octet-stream" enabled="true" />
      <!-- HERE -->

      <add mimeType="*/*" enabled="false" />
    </dynamicTypes>
    <staticTypes>
    <clear/>
      <add mimeType="text/*" enabled="true" />
      <add mimeType="message/*" enabled="true" />
      <add mimeType="application/x-javascript" enabled="true" />
      <add mimeType="text/javascript" enabled="true" />
      <add mimeType="text/css" enabled="true" />
      <add mimeType="application/atom+xml" enabled="true" />
      <add mimeType="application/xaml+xml" enabled="true" />

      <!-- HERE -->
      <add mimeType="image/png" enabled="true" />
      <add mimeType="image/jpg" enabled="true" />
      <add mimeType="image/jpeg" enabled="true" />
      <add mimeType="application/font-woff2" enabled="true" />
    <add mimeType="application/x-font-ttf" enabled="true" />
      <add mimeType="application/octet-stream" enabled="true" />
      <!-- HERE -->

      <add mimeType="*/*" enabled="false" />
    </staticTypes>
  </httpCompression>

Интересно, что для одного и того же профиля CDN (но другой конечной точки) у изображений есть Content-Encoding: gzip, поэтому кажется, что сжатие отлично работает и на CDN.

Этот ответ SO предложил добавить smth. например &group=smth.js в конце URL-адреса CDN, но это не поможет.

Так что я делаю неправильно?

4b9b3361

Ответ 1

В соответствии с вашим описанием я создал мое веб-приложение MVC для проверки этой проблемы, и я не настроил urlCompression в моем файле web.config.

введите описание изображения здесь

Без Azure CDN css/javascript будет сжат.

Для теста я просто CDN всем моим веб-приложением через Azure CDN следующим образом:

введите описание изображения здесь

введите описание изображения здесь

Примечание. Сжатие включено по умолчанию, а форматы для сжатия - значения по умолчанию.

Затем, зайдите на ссылки css/javascript, они будут сжаты, как ожидалось.

введите описание изображения здесь