用于删除url段的IIS重写规则

用于删除url段的IIS重写规则,iis,drupal,rewrite,Iis,Drupal,Rewrite,我正在尝试从以下位置将请求重定向到我的站点: pbt.mysite.com/pbt/index.php?查询字符串 因此,我想删除url的/pbt/段,并保留剩余的查询 致: pbt.mysite.com/index.php?查询字符串 我已使用以下内容设置IIS重写规则: <rewrite> <rules> <rule name="Rewrite remove PBT segment from URL">

我正在尝试从以下位置将请求重定向到我的站点:

pbt.mysite.com/pbt/index.php?查询字符串

因此,我想删除url的/pbt/段,并保留剩余的查询

致:

pbt.mysite.com/index.php?查询字符串

我已使用以下内容设置IIS重写规则:

<rewrite>
        <rules>
            <rule name="Rewrite remove PBT segment from URL">
                <match url="^/pbt/([/_0-9a-z-]+)"/>
                <action type="Rewrite" url="{R:1}"/>
            </rule>
        </rules>
    </rewrite>

但这似乎不起作用

我想知道我的规则是否有混乱,因为子域与我要删除的段相同(但保留子域)

此外,这是一个托管在IIS中的drupal站点,因此可能有更好的方法在php中实现这一点(我对此一无所知)


有什么想法吗?

您有一个需要删除的前导斜杠。此外,如果要匹配文件和文件夹(而不仅仅是示例中的文件夹),请将参数之间的部分也更改为:

<match url="^pbt/(.*)$"/>

感谢您的回复Brandon,但这对我不起作用:(