2010-12-06 10 views
1

Я запускаю веб-приложение asp.net на IIS7 с .net 3.5.настройка cookieless домена для статических ресурсов

Чтобы улучшить оценку Yslow, я рассматриваю реализацию cookieless домена для своих статических ресурсов, таких как изображения, CSS и JavaScript.

URL моего сайта www.mywebsite.com.

Так статические ресурсы будут иметь, например, URL-адрес из static.mywebsite.com/styles.css

Я хотел бы сделать это изменение как можно более безболезненным. Я использую относительные пути по всему сайту.

я могу настроить subdirectoy static.mywebsite.com

Но мне также нужно внести изменения в моем приложении. Я ищу помощь в этом. С новой функциональностью, которая может быть включена в web.config для перезаписи URL. Любые советы или идеи относительно того, как я могу настроить static.mywebsite.com для изображений/css/javascript?

+2

Хороший вопрос, но ИМХО вы не должны делать это, чтобы улучшить свой YSlow Гол. Я бы сделал это, только если вы полагаете, что у вас будет совершенствование. Пользователям все равно, что ваш счет yslow. Им нужна быстрая страница. Конечно, есть соотношение баллов: скорость, но не делайте ничего, чтобы увеличить счет. :) – Joe 2010-12-06 17:42:59

ответ

0

Возможно с исходящими правилами. Эти правила будут переписывать js, css, jpg и png на static.mywebsite.com.

<outboundRules rewriteBeforeCache="true"> 
    <rule name="CDN-01-css" preCondition="CheckHTML" stopProcessing="true"> 
     <match filterByTags="Link" pattern="/(.*\.css)" /> 
     <action type="Rewrite" value="http://static.mywebsite.com/{R:1}" /> 
    </rule> 
    <rule name="CDN-01-js" preCondition="CheckHTML" stopProcessing="true"> 
     <match filterByTags="Script" pattern="/(.*\.js)" /> 
     <action type="Rewrite" value="http://static.mywebsite.com/{R:1}" /> 
    </rule> 
    <rule name="CDN-01-jpg" preCondition="CheckHTML" stopProcessing="true"> 
     <match filterByTags="Img" pattern="/(.*\.jpg)" /> 
     <action type="Rewrite" value="http://static.mywebsite.com/{R:1}" /> 
    </rule> 
    <rule name="CDN-01-png" preCondition="CheckHTML" stopProcessing="true"> 
     <match filterByTags="Img" pattern="/(.*\.png)" /> 
     <action type="Rewrite" value="http://static.mywebsite.com/{R:1}" /> 
    </rule> 
    <preConditions> 
     <preCondition name="CheckHTML"> 
     <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> 
     </preCondition> 
    </preConditions> 
</outboundRules> 

Например:

Он будет автоматически изменять ваш вывод HTML

<link rel='stylesheet' id='social-logos-css' href='/wp-content/plugins/jetpack/_inc/social-logos/social-logos.min.css?ver=1' type='text/css' media='all' /> в

<link rel='stylesheet' id='social-logos-css' href='http://static.mywebsite.com/wp-content/plugins/jetpack/_inc/social-logos/social-logos.min.css?ver=1' type='text/css' media='all' />