奇怪的'MySqlSiteMapProvider'错误,尽管正在使用'XmlSiteMapProvider'



我最近将一些Web应用程序从共享的托管环境迁移到我的专用服务器。服务器是Windows Server 2012 R2标准,我的所有网站(同一C#Web应用程序上的所有略有变化)都可以正常工作,但是当您尝试浏览到页面时,其中一个网站正在抛出此错误。

Server Error in 'ABC' Application.
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 
Parser Error Message: Host 'SERVERNAME' is not allowed to connect to this MariaDB server
Source Error: 

Line 283:    <siteMap>
Line 284:      <providers>
Line 285:        <add name="MySqlSiteMapProvider" type="MySql.Web.SiteMap.MySqlSiteMapProvider, MySql.Web, Version=6.9.7.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/" />
Line 286:      </providers>
Line 287:    </siteMap>
Source File: C:WindowsMicrosoft.NETFramework64v4.0.30319Configmachine.config    Line: 285 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.7.2053.0

奇怪的是我正在使用System.Web.XMLSiteMapProvider而不是MySQL提供商(正如错误所暗示的那样),请参见下文web.config

<siteMap>
  <providers>
    <add name="Admin" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/Admin.sitemap" />
    <add name="Branch" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/Branch.sitemap" />
    <add name="Supplier" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/web.sitemap" />
  </providers>
</siteMap>

还有两个其他版本的同一应用程序(beta&amp; a clone)都可以正常工作,并且他们的web.config文件具有相同的站点地图提供商。为什么要抛出此错误?它与什么相关?设置IIS时我是否想念一些东西?

请注意,错误来自machine.config,而不是web.config。所有web.config文件本质上都从基本机器版本继承。要覆盖提供商,您可以首先清除列表。例如:

<siteMap defaultProvider="Admin">
  <providers>
    <!-- Add this next line: -->
    <clear/>
    <add name="Admin" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/Admin.sitemap" />
    <add name="Branch" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/Branch.sitemap" />
    <add name="Supplier" type="System.Web.XmlSiteMapProvider" siteMapFile="~/MenuSystem/web.sitemap" />
  </providers>
</siteMap>

相关内容

  • 没有找到相关文章