无法在Web服务器上启动调试。无法启动Asp.Net调试

时间:2011-08-19 10:35:50

标签: asp.net iis iis-7 url-rewriting

我在web.config中设置了几个url重写规则。他们是:

<rewrite>
        <rules>

            <rule name="RedirectUserFriendlyURL1" stopProcessing="true">
                <match url="^(.*)\.aspx$"/>
                <conditions>
                    <add input="{REQUEST_METHOD}" pattern="^POST$" negate="true"/>
                    <add input="{QUERY_STRING}" pattern="^([^=&amp;]+)=([^=&amp;]+)$"/>
                </conditions>
                <action type="Redirect" url="{R:1}/{C:1}/{C:2}" appendQueryString="false"/>
            </rule>
            <rule name="RewriteUserFriendlyURL1" stopProcessing="true">
                <match url="^(.*)/([^/]+)/([^/]+)/?$"/>
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
                </conditions>
                <action type="Rewrite" url="{R:1}.aspx?{R:2}={R:3}"/>
            </rule>
            <rule name="RedirectUserFriendlyURL2" stopProcessing="true">
                <match url="^(.*)\.aspx$"/>
                <conditions>
                    <add input="{REQUEST_METHOD}" pattern="^POST$" negate="true"/>
                </conditions>
                <action type="Redirect" url="{R:1}" appendQueryString="false"/>
            </rule>
            <rule name="RewriteUserFriendlyURL2" stopProcessing="true">
                <match url="^(.*)$"/>
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
                </conditions>
                <action type="Rewrite" url="{R:1}.aspx"/>
            </rule>
        </rules>
    </rewrite>

所有这些都很好,我很确定。但是,当我使用F5调试应用程序时,我收到错误“无法在Web服务器上启动调试。无法启动Asp.Net调试。”不知道为什么会这样。如果我使用Ctrl + F5在发布模式下运行它,效果非常好。谁能告诉我为什么会这样?如果我只是删除这些规则然后F5它,它也可以。我试图谷歌这个问题,并提出了一个链接。但它对我不起作用:

http://forums.asp.net/t/1649452.aspx/1

在上面的链接中,有人要求将表格从大写重命名为小写。挺滑稽的!并且有人要求改变项目类型以使用.Net framework 3.5

2 个答案:

答案 0 :(得分:2)

只需将您的起始页设置为一个未被规则重写的页面。

如果这不起作用,请在规则中添加一些条件以排除脚本文件。 你可能也看看这个问题:

Adding IIS UrlRewrite seems to break debugging on local IIS server

答案 1 :(得分:0)