Как добавить исходящие правила перезаписи в ASP.NET Core - PullRequest
0 голосов
/ 18 февраля 2019

Я использую простое правило перезаписи исходящего трафика для обслуживания статических ресурсов из CDN.Он отлично работает на IIS, но не работает в ASP.NET Core.

<outboundRules rewriteBeforeCache="true">
  <rule name="CDN" preCondition="CheckHTML" enabled="true" stopProcessing="true">
    <match filterByTags="Img, Link, Script" pattern="(^(?!www\.|(?:http|ftp)s?:\/\/|[A-Za-z]:\\|\/\/).*\.(jpg|jpeg|png|js|css|svg|ico|gif).*)" />
    <action type="Rewrite" value="https://cdn.com{R:1}" />
    <conditions logicalGrouping="MatchAll">
    </conditions>
  </rule>
  <preConditions>
    <preCondition name="CheckHTML">
      <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
    </preCondition>
  </preConditions>
</outboundRules>

В Microsoft Docs есть образец, но нет исходящего URL (в качестве промежуточного программного обеспечения), и упоминается, что эта функция недоступна какна данный момент с Middleware.

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/url-rewriting?view=aspnetcore-2.2#unsupported-features enter image description here

У меня есть веб-приложение ASP.NET Core, размещенное наMicrosoft Azure.Как включить для него правила исходящей перезаписи?

Кто-нибудь работал над правилами исходящей перезаписи в ASP.NET Core?пожалуйста, помогите!

TIA!

1 Ответ

0 голосов
/ 18 февраля 2019

Ваш вопрос не ясен.ASP.NET Core - это фреймворк, и он одинаков для всех моделей хостингаIIS может размещать приложения ASP.NET Core (необязательно «в процессе» в v2.2 + или как обратный прокси-сервер для Kestrel), или вы можете использовать Kestrel напрямую (в этом случае HTTP.sys является вашим «хостом»).Я полагаю, вы говорите о последнем сценарии, в этом случае нет.HTTP.sys не имеет функции перезаписи, поэтому вы полностью зависите от промежуточного программного обеспечения, которое, конечно, не поддерживает исходящие правила.Если вам нужны исходящие правила, то вам нужно будет разместить IIS (или другой полноценный веб-сервер, такой как Apache, Nginx и т. Д.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...