c# – 是否可以在ASP.NET / IIS中依赖于用户代理进行条件URL重写?

我工作的网站主持内容不断被抓取并张贴在其他地方.

是否可以进行URL重写,以便普通用户和列入白名单的抓取工具可以查看网站,但阻止访问无法识别的浏览器?

解决方法

是的,你可以使用URL Rewrite模块(我正在使用v2 ..但它也应该与v1.x一起使用,尽管我没有v1.x可以测试):
<system.webServer>
    <rewrite>
        <rules>
            <rule name="UserAgentRedirect" stopProcessing="true">
                <match url="^(.*)$" />
                <conditions>
                    <add input="{HTTP_USER_AGENT}" pattern="(iphone|ipod)" />
                </conditions>
                <action type="Rewrite" url="/special-page.aspx" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

根据上述规则,来自iPhone或iPad(或用户代理字符串中具有iphone或ipod的任何其他浏览器/应用程序)的所有请求都将被重写(内部重定向)到/special-page.aspx.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...