症狀
當您升級至 Microsoft Exchange Server 2019 的累積更新 3 或 Exchange Server 2016 的累積更新 14 後,您將收到以下錯誤訊息:
記錄檔名稱:應用程式
資料來源:MSExchange Autodiscover
日期: 日期時間
事件編號:1
任務類別:網路
層級:錯誤
關鍵字:類別
使用者:無資料
電腦: ComputerName
描述:
未處理的例外「物件參照未設定為物件的實例。」
Stack trace: at Microsoft.Exchange.AutoDiscoverV2.FlightSettingRepository.GetHostNameFromVdir (ADObjectId serverSiteId, String protocol)
at Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2.ExecuteOnPremEndFlow (AutoDiscoverV2Request 請求)
at Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2.Execute (AutoDiscoverV2Request 請求,ITenantRepository tenantRepository)
at Microsoft.Exchange.AutoDiscoverV2.AutoDiscoverV2HandlerBase。<>c__DisplayClass11_0。<ProcessRequest>b__0 ()
at Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch (動作 tryDelegate, Func'2 filterDelegate, Action'1 catchDelegate)
因應措施
為了解決這個問題,你應該檢查以下虛擬目錄的外部網址:
Get-WebServicesVirtualDirectory -server YourExchangeServerName |佛羅里達名稱,*網址*
Get-AutodiscoverVirtualDirectory -server YourExchangeServerName |佛羅里達名稱,*網址*
Get-ActiveSyncVirtualDirectory -server YourExchangeServerName |佛羅里達名稱,*網址*
若外部 URL 為空白,則為外部 URL 指派一個對應公開 FQDN 的值。
範例:
步驟一: 請使用以下 cmdlet 檢查 Autodiscover 網址。
Get-AutodiscoverVirtualDirectory -server YourExchangeServerName |佛羅里達名稱,*網址*
名稱:Autodiscover (預設網站)
內部網址:
外部網址:
如果 ExternalUrl 是空的,請使用 step2 將一個對應於公開 FQDN 的值分配給 Autodiscover 外部 URL。
步驟2: 請使用以下 cmdlet 設定 Autodiscover 外部網址。
Get-AutodiscoverVirtualDirectory -server YourExchangeServerName |set-AutodiscoverVirtualDirectory -ExternalUrl https://autodiscover.FQDN/Autodiscover/Autodiscover.xml
附註
ExternalUrl 只有在 2019 Exchange Server、2016 Exchange Server 和 2013 Exchange Server 的 EMS) 新增 PowerShell 會話時才能存取, (EMS 則無法存取。
如果你沒有在新的 PowerShell 工作階段中新增 PSSnapin,可能會收到錯誤訊息。
例如,你在新的 PowerShell 會話中執行以下 cmdlet,但未加入 PSSnapin:
Get-AutodiscoverVirtualDirectory -伺服器 $env:COMPUTERNAME |Set-AutodiscoverVirtualDirectory -外部網址「https://autodiscover.365labs.net/Autodiscover/Autodiscover.xml」
接著,您會收到以下錯誤訊息:
找不到與參數名稱「ExternalUrl」相符的參數。
CategoryInfo : InvalidArgument: (:) [Set-AutodiscoverVirtualDirectory], ParameterBindingException
FullQualifiedErrorID : NamedParameterNotFound,Set-AutodiscoverVirtualDirectory
PSComputerName : ex15.365labs.net
為了解決這個問題,你應該執行以下指令,讓 ExternalUrl 變得可存取:
PS C:\PowerShell> Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010
參考資料
了解 Microsoft 用來說明軟體更新的術語。
其他資訊
Microsoft 已經意識到這個問題,並在相關資訊開放時會在本篇文章中發布更多資訊。