如何在 iis 7.5 上的 cfwheels 1.4 中启用 URL 重写?

How to enable URL rewriting in cfwheels 1.4 on iis 7.5?

我在装有 IIS 7.5 的 windows 服务器 2008R2 上的 Railo 4.2.2.004 上使用 cfwheels 1.4,但无法使 URL 重写工作。

在 config/settings.cfm 我有

set(URLRewriting="On");

我的web.config看起来像这样

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>
                        <rule name="ColdFusion on Wheels URL Rewriting" enabled="true">
                            <match url="^(.*)$" ignoreCase="true" />
                            <conditions logicalGrouping="MatchAll">
                                <add input="{SCRIPT_NAME}" matchType="Pattern" ignoreCase="true" negate="true" pattern="^/(flex2gateway|jrunscripts|cfide|CFFileServlet|cfformgateway|railo-context|files|images|javascripts|miscellaneous|stylesheets|robots.txt|favicon.ico|sitemap.xml|rewrite.cfm)($|/.*$)" />
                            </conditions>
                            <action type="Rewrite" url="/rewrite.cfm/{R:1}" />
                        </rule>
                </rules>
            </rewrite>
        </system.webServer>
</configuration>

我在 IIS 中安装了 URL 重写模块。 IIS 确实显示 web.config 文件中的入站规则。

浏览器显示

Error: Redirection error

我基本遵循: [Removing index.cfm from url with web config

我错过了什么? 问候 托尔斯滕

仅供参考 我通过用插件 internalredirect 替换 redirectTo() 解决了这个问题。 ;-)

public void function setControllerAndView() {                   

        /*redirectTo(    controller="#request.domaininfo.getHomeController()#",
                    action="#request.domaininfo.getHomeAction()#");*/

        // use plugin internalredirect.cfc
        internalredirect(    controller="#request.domaininfo.getHomeController()#",
                            action="#request.domaininfo.getHomeAction()#");       
    }