Umbraco 8.4迁移至Azure App Service后启动报错:根级数据无效
错误根因
报错System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1是XML文件格式损坏的典型特征,结合错误栈中的LocalizedTextServiceFileSources调用链,可以定位到问题出在Umbraco的多语言翻译XML文件上。
排查解决步骤
- 检查站点
~/Config/Lang目录下的所有XML文件
确认每个XML文件的首行没有多余字符:包括XML声明<?xml version="1.0"?>之前的空格、换行、乱码BOM头,同时排除文件在克隆、发布过程中出现内容截断的情况。可以直接将原正常运行站点的Lang目录完整覆盖到新站点,优先验证是否是文件损坏导致的问题。 - 检查自定义翻译文件
如果站点有引入第三方插件、或者自行添加了自定义的翻译XML文件,单独检查这些文件的标签闭合、语法格式是否符合XML规范。 - 核对Azure App Service发布配置
确认你的发布流程没有对XML文件做异常的编码转换、内容替换规则,同时确认新Azure App Service的站点运行身份对~/Config/Lang目录有读取权限。 - 快速验证方案
下载Umbraco 8.4官方正式版的默认Lang目录,替换当前站点的对应目录,若站点能正常启动,则确认是翻译文件损坏问题,再逐一排查自定义的翻译文件内容即可。
内容的提问来源于stack exchange,提问作者Imrankhan
相关产品推荐
相关产品推荐

