asp.net – 在web.config中将子文件夹重写为子域
我正在尝试为以下场景编写重写规则.
用户尝试加载此图片: domain.com/images/folder/picture.jpg 而我需要它加载: cdn.domain.com/images/folder/picture.jpg. 这是我的不起作用: <rule name="CDN rewrite for Images"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="domain.com" /> <add input="{REQUEST_URI}" pattern="^/images/folder/(.*)$" /> </conditions> <action type="Rewrite" url="cdn.domain.com/images/folder/{C:1}" /> </rule> 更新:添加其他信息.大多数图片都是从Joomla提供的,所以虽然域的根类似于domain.com,但大多数图像都是用src =“/ images / folder / picture.jpg”输入的.不太确定这是如何影响重写的,但是下面没有关于cheesemacfly答案的选项正在运作…… 更新2:虽然在我的特殊情况下,cheesemacfly无法帮助我,但是我给了他赏金,并将他的答案标记为被接受的答案,因为他超越了我试图帮助我聊天.希望他的回答可以帮助重写IIS的人. 解决方法
编辑:
为了能够将URL重写(并且不仅仅是重定向)到外部网站,您需要安装Application Request Routing module并启用代理模式. 为此: > Download and install the module >单击“操作”窗格(屏幕右侧)上的“服务器代理设置” 第二步是建立规则. 如果您希望重写基于路径,请使用以下代码: <rewrite> <rules> <rule name="Rewrite to cdn domain"> <match url="^images/folder/(.+)$" /> <action type="Rewrite" url="http://cdn.domain.com/images/folder/{R:1}" /> </rule> </rules> </rewrite> 或者,如果您在第二个网站上保留相同的文件夹架构,则可以简化如下: <rewrite> <rules> <rule name="Rewrite to cdn domain"> <match url="^images/folder/(.+)$" /> <action type="Rewrite" url="http://cdn.domain.com/{R:0}" /> </rule> </rules> </rewrite> 如果你只想捕获以特定扩展名结尾的文件(比如图像): <rewrite> <rules> <rule name="Forward to cdn domain"> <match url="^images/folder/.+.(?:jpg|bmp|gif)$" /> <action type="Rewrite" url="http://cdn.domain.com/{R:0}" /> </rule> </rules> </rewrite> 请参阅:http://www.iis.net/learn/extensions/url-rewrite-module/iis-url-rewriting-and-aspnet-routing(“您应该使用哪个选项?”部分) 小费: 测试模式的最佳方法是使用IIS测试模式工具. 在您网站的根目录 – >网址重写 – >创建一个空白规则 – >点击测试模式: 如果没有得到预期的结果,可以使用Failed Request Tracing tool调试重写 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 使用IServiceProvider获取会话服务
- asp.net – Stripe Webhook事件续订订阅
- asp.net-mvc – 根据Model值为元素添加样式
- 在ASP.NET网站上锁定车队
- .net – 排除某些页面使用HTTPModule
- asp.net-mvc – ASP.NET Webforms或ASP.NET MVC中的电子商务
- asp.net – 如何在没有代码隐藏文件的情况下在VB.NET aspx页
- asp.net-mvc-4 – 如何使用mvc 4中的bundle删除版本生成器的
- 如何做一个ASP.NET MVC Ajax表单与multipart/form-data?
- ASP.NET Core文件上传与下载实例(多种上传方式)