0

我在我的 iis 中安装了一个 URL 重写模块 2,我有这个规则

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="ASPX to ASP Redirect" stopProcessing="true">
                    <match url="([_0-9a-z-\.]+).com/([_0-9a-z-]+).aspx$" />
                    <action type="Redirect" url="http://{R:1}.com/{R:2}.asp" appendQueryString="true" logRewrittenUrl="false" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

基本上我想要的是创建匹配的东西,如 www.test.com/default.aspx 并将其重定向到它的 asp 版本,所以当我输入 www.test.com/default.aspx 时,它将重定向到 www.test.com/默认.asp。

不知道这有什么问题。

4

1 回答 1

0

域名不是与您的正则表达式匹配的 URL 的一部分。域名是什么真的很重要吗?我想说,只要 URL 以它结尾,.aspx就应该重定向到以.asp. 这很容易做到:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="ASPX to ASP Redirect" stopProcessing="true">
                    <match url="(.*)\.aspx$" />
                    <action type="Redirect" url="/{R:1}.asp" appendQueryString="true" redirectType="Permanent" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
于 2012-11-10T15:40:33.503 回答