繁体   English   中英

使用IIS URL重写提供静态内容时如何避免301错误

[英]how to avoid 301 errors when serving static content using iis url rewrite

我正在尝试使用IIS URL重写从其他服务器(或站点)获取图像(静态内容)的网站。 下面是相同的规则,用于检查任何图像请求并从同一服务器上的另一个网站提供服务

 <rule name="image" stopProcessing="true">
      <match url="^Images/(.+)$" />
      <action type="Redirect" url="http://localhost/PGFeedReadAPI/Images/{R:1}" appendQueryString="false" />
 </rule>

这可以正常工作,但是我得到的结果是301错误,即请求转到服务器,并以301(永久移动)的形式响应浏览器,然后浏览器对新的url提出了新的请求。 我们可以避免这种往返吗? 我希望在不进行任何代码更改的情况下(即仅通过配置更改)实现这一目标。 如果我缺少一些基本概念,请原谅。

看看这篇文章的答案: 在IIS7上使用MVC3将图像放在CDN上

使用响应过滤器更改网址, 然后再将其发送到客户端。 这将避免301秒。

我进一步进行了此操作,并添加了缓存,以便在应用启动时查询CDN,将静态文件名的词典保存为CDN url,然后快速换入。它还会自动将丢失的文件从本地上传到CDN并将其添加到CDN该词典以供将来参考(异步)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM