Как запретить лазеру cdn обслуживать динамическое содержимое? Я хочу, чтобы он обслуживал только статические файлы: изображения, скрипты и CSS, но когда я выбираю свое веб-приложение в качестве источника, оно также обслуживает корневой URL (/), то есть динамическую страницу. Могу ли я установить ограничения на основе расширения файла?
Как запретить лазеру cdn обслуживать динамический контент?
Ответы (3)
Не в это время. Любой запрос к граничному узлу CDN попадет в источник ресурса и кэширует его, будь то динамический или статический контент. Таким образом, решение состоит в том, чтобы убедиться, что ваше приложение не ссылается на какой-либо динамический контент через CDN.
Если ваш статический контент находится в определенных папках (images /, css / и т. Д.), Вы можете предотвратить доступ CDN к контенту за пределами этих папок.
Чтобы поисковые системы не индексировали наш сайт через домен CDN, мы отключили просмотр сайтов в домене CDN (за исключением определенного набора папок, которые обслуживают ресурсы), добавив следующее правило urlRewrite в web.config:
<rule name="Deny site browsing on CDN domain" stopProcessing="true">
<match url="^(storage/|ui/)(.*)" negate="true" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_X_HOST}" pattern="\.azureedge.net$" />
</conditions>
<action type="CustomResponse" statusCode="404" statusReason="Not found" statusDescription="Not found" />
</rule>
Использование веб-сервера в качестве источника CDN - это «ленивый» способ настройки CDN. После настройки на своем веб-сайте вместо использования:
/mypic.jpg
замените все относительные URL на
xxx.azureedge.net/mypic.jpg
Вам действительно не нужно заботиться о том, обслуживает ли CDN динамический контент или нет, вам просто нужно выбрать тот контент, который вам нужен. CDN просто слепо обслуживает контент из указанного вами источника.