Windows 服务器 (IIS) 的 URL 重写

Windows 服务器 (IIS) 的 URL 重写

昨天,我寻求帮助网址重写- Ulrich Palha 帮助我解决了这个问题。

他的解决方案在使用的 Linux 服务器上运行良好.htaccess,我非常感谢他的帮助,但该解决方案在运行 IIS 的 Windows 服务器上不起作用。我花了一整天的时间尽力让它在 Windows 服务器上运行,但这对我来说是糟糕的一天 :-(,所以我寻求帮助。

这是在 Linux 上运行的代码.htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^([^/]*)/?([^/]*)/?([^/]*)\.html$ category.php?maincat_url=$1&first_subcat_url=$2&second_subcat_url=$3 [L]

谢谢。

答案1

您需要安装免费的URL 重写模块来自 Microsoft。然后您应该将以下重写规则添加到您的 web.config 文件中:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Test" stopProcessing="true">
                    <match url="^([^/]*)/?([^/]*)/?([^/]*)\.html$" />
                    <action type="Rewrite" url="category.php?maincat_url={UrlEncode:{R:1}}&amp;first_subcat_url={UrlEncode:{R:2}}&amp;second_subcat_url={UrlEncode:{R:3}}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

相关内容