首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未应用IIS 7 URL重写规则

未应用IIS 7 URL重写规则
EN

Stack Overflow用户
提问于 2010-11-09 21:38:38
回答 1查看 2.4K关注 0票数 6

我有一个托管在IIS7服务器上的.net 4.0 web应用程序。

在读完这篇文章后:http://learn.iis.net/page.aspx/496/iis-url-rewriting-and-aspnet-routing/关于从另一个服务器提供静态内容,这样cookies就不会随静态文件的每个请求一起发送,我尝试了一下,但没有太多成功。

这是写在web.config文件中的部分:

代码语言:javascript
复制
<system.webServer>
    <rewrite>
        <rules>
            <rule name="images" stopProcessing="true">
                <match url="^images/(.*)$" />
                <action type="Rewrite" url="http://static-server.com/images/{R:1}" appendQueryString="true" logRewrittenUrl="true" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

定义了这个规则后,指向图像文件夹中文件的每个链接都应该重写到静态服务器URL中。但这根本不起作用,现在图像文件夹中的每个图像都会返回404 not found。你知道导致这种行为的原因是什么吗,或者有什么不同的解决方案,可以从不同的服务器提供特定文件夹中的文件,而不必花费大量的代码并更改所有链接以链接到静态服务器?

我也尝试了使用Redirect操作类型而不是Rewrite操作,这实际上是有效的,但它违背了我试图在另一台服务器上提供文件的原因(这种方式将请求发送到我的动态内容服务器,其中包含所有需要的cookie,并被重定向到静态服务器,这实际上比从动态内容服务器提供图像更糟糕)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-09 21:57:37

我不认为这个规则就能为你解决这个问题。它可能不会重写发送给用户的页面中的链接。

您链接到的文章建议您“与IIS Application Request Routing module一起”执行此操作。它是路由模块,它实际上更改了发送到客户端的文件中的链接。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4134230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档