【问题标题】:The element > system.webServer' has invalid child > element 'rewrite'元素 > system.webServer' 有无效的子元素 > 元素 'rewrite'
【发布时间】:2011-07-15 14:36:49
【问题描述】:

警告 1 元素 “system.webServer”有无效的孩子 元素“重写”。可能的列表 预期元素:'asp、缓存、cgi、 默认文档,目录浏览, 全局模块,处理程序, httpCompression,httpErrors, httpLogging、httpProtocol、 httpRedirect,httpTracing, isapiFilters、模块、odbcLogging、 安全,服务器运行时, serverSideInclude,静态内容, 跟踪,urlCompression,验证, 管理'。 D:\PROJEKTI\FoodOrder\FoodOrder\Web.config 185 4 FoodOrder

代码:

system.webServer>
        <validation validateIntegratedModeConfiguration="false" />
        <modules runAllManagedModulesForAllRequests="true">
            <remove name="ScriptModule" />
            <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        </modules>
        <handlers>
            <remove name="WebServiceHandlerFactory-Integrated" />
            <remove name="ScriptHandlerFactory" />
            <remove name="ScriptHandlerFactoryAppServices" />
            <remove name="ScriptResource" />
            <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        </handlers>
        <rewrite>
            <rewriteMaps>
                <rewriteMap name="StaticRewrites">
                    <!--<add key="/Default.aspx" value="/Default.aspx" />-->
                </rewriteMap>
            </rewriteMaps>
            <rules>

页面可以工作,但我总是收到警告,当我发布页面时,我会因为这个而出现发布错误......

【问题讨论】:

    标签: asp.net url-rewriting


    【解决方案1】:

    asp.net, url rewrite module and web.config 可能重复

    当 Visual Studio IntelliSense 在架构文件上找不到有关重写模块的信息时会发生这种情况。因此,我们需要在文件中专门为 rewrite 部分添加架构:DotNetConfig.xsd

    Ruslan 提供了非官方的重写模式。对于 Visual Studio 2010,请从他的页面下载 xml 架构:http://ruslany.net/2010/04/visual-studio-xml-intellisense-for-url-rewrite-2-0/

    从这里下载早期版本: http://ruslany.net/2009/08/visual-studio-xml-intellisense-for-url-rewrite-1-1/#comment-1402

    对于这两个版本,说明都是here

    对于 VS2010,请记住将 %VS90COMNTOOLS% 替换为 %VS100COMNTOOLS%

    对于 VS2012 及更高版本,请关注fftsys's article

    如果您不想使用 ruslany 的脚本,您仍然可以使用 rewrite 模块。在这种情况下,您仍然可以修改 web.config 以在 Visual Studio 之外添加重写部分。

    IIS 的原始重写模块来自微软:http://www.iis.net/downloads/microsoft/url-rewrite 并得到他们的支持。 ruslany 的脚本只是在 Visual Studio 中启用支持,以便 VS 识别它。

    【讨论】:

    • 这里还有一些关于 VS2012 的详细信息:stackoverflow.com/questions/13120726/…
    • 通过阅读那里提供的免责声明,很难实现这一点。无论如何,这可能会导致失败?
    • @AbidAli:请检查答案的最后两段。
    • 那个网页看起来可能已经死了。我们还有其他地方可以买到吗?
    • 我们可以通知他他的网站已关闭 - forums.iis.net/members/ruslany.aspx 或者如果我在我的计算机中找到副本,我将自己上传一个副本。我下班回来后会做的。
    猜你喜欢
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-06
    • 2021-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多