首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IIS重写规则-如果路径没有查询字符串

问IIS重写规则-如果路径没有查询字符串
EN

Stack Overflow用户
提问于 2018-07-13 06:10:42
回答 1查看 1.1K关注 0票数 0

如何编写IIS重写规则if path does not have query string and any capital letter exists in path then redirect to same path with lower case

例如:

http://localhost:62871/Second.aspx/Test?X=Y

重定向到:http://localhost:62871/second.aspx/test?X=Y

下面的规则起作用了,但它在更低的情况下使用了查询字符串:

代码语言:javascript
复制
    <rewrite>
        <rules>
            <rule name="LowerCaseRule1" stopProcessing="true">
                <match url="[A-Z]" ignoreCase="false" />
                <action type="Redirect" url="{ToLower:{URL}}" />
            </rule>
        </rules>
    </rewrite>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-13 12:29:41

变量URL包含整个url -因此ToLower是小写的整个url。

要获得所需的行为,需要手动从多个服务器变量创建action的url。

可用变量包括{HTTP_HOST}、{PATH_INFO}和{QUERY_STRING},然后可以将小写函数应用于所需的变量。

在创建最终的url时,还需要在变量之间包含分隔符:、/、?,以获得有效的url。

有关变量的快速概述,请参阅此页面:https://weblogs.asp.net/owscott/url-parts-available-to-url-rewrite-rules

有关完整的重写模块文档,请参见此处:https://learn.microsoft.com/en-us/iis/extensions/url-rewrite-module/url-rewrite-module-configuration-reference

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

https://stackoverflow.com/questions/51318631

复制
相关文章

相似问题

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