1

我正在使用 .net 3.5 在 IIS7 上运行 asp.net Web 应用程序。

为了提高我的 Yslow 分数,我正在考虑为我的静态资源(如图像、CSS 和 JavaScript)实现一个无 cookie 域。

我网站的 URL 是 www.mywebsite.com。

因此,例如静态资源的 URL 为 static.mywebsite.com/styles.css

我想让这种变化尽可能无缝。我在整个站点中使用相对路径。

我可以设置子目录 static.mywebsite.com

但我还需要对我的应用程序进行更改。我正在寻求帮助。使用可包含在 web.config 中用于 URL 重写的新功能。关于如何为图像/css/javascript 设置 static.mywebsite.com 的任何提示或想法?

4

1 回答 1

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' />

于 2017-08-05T09:46:15.823 回答