安装 Exchange Server 2019 CU3 或 Exchange Server 2016 CU14 后自动发现事件 ID 1

应用对象
Exchange Server 2019 Exchange Server 2016

症状

升级到 Microsoft Exchange Server 2019 的累积更新 3Exchange Server 2016 的累积更新 14 后,收到以下错误消息:

日志名称:应用程序

源: MSExchange 自动发现

Date: DateTime

事件 ID:1

任务类别:Web

级别:错误

关键字:经典

用户: 不适用

计算机: ComputerName

说明:

未处理的异常“对象引用未设置为对象的实例。”

堆栈跟踪:位于 Microsoft.Exchange.AutoDiscoverV2.FlightSettingRepository.GetHostNameFromVdir (ADObjectId serverSiteId,字符串协议)

在 Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2.ExecuteOnPremEndFlow (AutoDiscoverV2Request 请求)

在 Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2.Execute (AutoDiscoverV2Request 请求、ITenantRepository tenantRepository)

位于 Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2HandlerBase。<>c__DisplayClass11_0。<ProcessRequest>b__0 ()

位于 Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch (Action tryDelegate, Func'2 filterDelegate, Action'1 catchDelegate)

解决方法

若要解决此问题,应检查以下虚拟目录的外部 URL:

Get-WebServicesVirtualDirectory -server YourExchangeServerName |fl name, *url*

Get-AutodiscoverVirtualDirectory -server YourExchangeServerName |fl name, *url*

Get-ActiveSyncVirtualDirectory -server YourExchangeServerName |fl name, *url*

      

如果外部 URL 为空,请为与公共 FQDN 对应的外部 URL 赋值。

      

示例:

      

1 步:使用以下 cmdlet 检查自动发现 URL。

      

Get-AutodiscoverVirtualDirectory -server YourExchangeServerName |fl name, *url*

      

名称:默认网站) (自动发现

InternalUrl :

ExternalUrl :

      

如果 ExternalUrl 为空,请使用步骤 2 将与公共 FQDN 对应的值分配给自动发现外部 URL。

      

步骤2:使用以下 cmdlet 设置自动发现外部 URL。

      

Get-AutodiscoverVirtualDirectory -Server YourExchangeServerName |set-AutodiscoverVirtualDirectory -ExternalUrl https://autodiscover.FQDN/Autodiscover/Autodiscover.xml

      

注意
      

  • 仅当在新的 PowerShell 会话中添加 PSSnapin 时,才能访问 ExternalUrl, (Exchange Server 2019、Exchange Server 2016 和 Exchange Server 2013 上的 EMS) 。

  • 如果未在新的 PowerShell 会话中添加 PSSnapin,可能会收到错误消息。

    例如,运行以下 cmdlet 而无需在新的 PowerShell 会话中添加 PSSnapin:

Get-AutodiscoverVirtualDirectory -Server $env:COMPUTERNAME |Set-AutodiscoverVirtualDirectory -ExternalUrl “https://autodiscover.365labs.net/Autodiscover/Autodiscover.xml”

      

然后,你会收到以下错误消息:

      

找不到与参数名称“ExternalUrl”匹配的参数。

  • CategoryInfo : InvalidArgument: (:) [Set-AutodiscoverVirtualDirectory], ParameterBindingException

  • 完全限定的错误 ID: NamedParameterNotFound,Set-AutodiscoverVirtualDirectory

  • PSComputerName : ex15.365labs.net

      

若要解决此问题,应运行以下命令来使 ExternalUrl 可访问:

      

PS C:\PowerShell> Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010

参考资料

了解 Microsoft 用于描述软件更新的术语

更多信息

Microsoft 已意识到此问题,并将在本文中发布更多信息。