asp.net - 配置文件已被另一个程序更改

标签 asp.net web-config

我收到以下错误,其中系统认为正在修改 web.config 文件。实际文件显示自网站上次发布以来 web.config 文件的修改日期没有更改。重定向到另一个页面时会出现此问题,但发生问题的页面会发生变化,并且任何访问该站点的用户都会出现错误。重新发布应用程序可以暂时缓解该问题,但大约 24 小时后该问题将再次出现。任何想法为什么它认为文件正在改变,即使它没有改变?

Current User: NT AUTHORITY\NETWORK SERVICE Target Site: BaseConfigurationRecord.EvaluateOne Error: (System.Configuration.ConfigurationErrorsException) The configuration file has been changed by another program. (E:\PEC\web.config)

StackTrace: at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
at System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult, Boolean getLkg, Boolean getRuntimeObject, Object& result, Object& resultRuntimeObject) at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject) at System.Configuration.BaseConfigurationRecord.GetSection(String configKey) at System.Web.Configuration.RuntimeConfig.GetSectionObject(String sectionName) at System.Web.Configuration.RuntimeConfig.GetSection(String sectionName, Type type, ResultsIndex index) at System.Web.Configuration.RuntimeConfig.get_Authorization() at System.Web.Security.UrlAuthorizationModule.OnEnter(Object source, EventArgs eventArgs) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

最佳答案

我们发现这个问题是由 IIS 中的两个不同的应用程序被配置为指向同一个目录引起的——我们有一个 www.mysite.com 和 preview.mysite.com;我们将使用 msdeploy 设置预览克隆主站点,但没有意识到 www.mysite.com/foo 是一个独立的 IIS 虚拟应用程序 - 所以我们最终将 www.mysite.com/foo 和 preview.mysite.com/foo 都指向了同一个文件夹, 并“争吵”他们中的哪一个拥有配置文件,等等。

删除第二个虚拟应用程序解决了这个问题。

关于asp.net - 配置文件已被另一个程序更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2501473/

相关文章:

c# - 通过 jQuery .append() 添加 ASP.Net 元素

html - 如何使用 .less 文件制作网站的可变主题(如更改品牌颜色等)

asp.net - FormsAuthentication.SetAuthCookie() 是否制作基于 session 的 cookie?

c# - 奇怪的 'MySqlSiteMapProvider' 错误虽然正在使用 'XmlSiteMapProvider'

javascript - 使用 JavaScript 在 Asp.net mvc 中突出显示 html 文档表达式

asp.net - 验证 ASP.NET MVC 中的字符串数组

asp.net-mvc - 由于基于角色的 [Authorize] 属性,ASP.NET MVC 5 Azure 网站无法在某些 View 上连接到 SQL Azure DB

asp.net - Web Config 转换以添加子元素

yii2 - yii2 的 web.config(提供的 .htaccess 文件)

visual-studio - VS2010 Clean Web.configs - 不更新