Este artículo describe cómo recrear directorios virtuales (incluidos OWA y ECP) ​​en Exchange Server 2019/2016/2013. La reparación de estos directorios virtuales ayuda a restablecer todas las configuraciones, recrearlas desde cero y puede resolver muchos problemas de Exchange relacionados con el funcionamiento incorrecto de OWA o ECP: varios errores de página, problemas de pantalla en blanco, problemas de permisos, archivos faltantes, problemas de conectividad de Outlook , errores de tiempo de ejecución de ECP, error HTTP 500, etc.

Permítanos recordarle que los directorios virtuales son necesarios para acceder a Exchange desde aplicaciones basadas en web (como Outlook Web App (OWA), Exchange Active Sync, Autodiscover). Puede administrar los directorios virtuales de Exchange de 3 maneras: Centro de administración de Exchange (EAC), Microsoft Exchange Management PowerShell (EMS), consola mmc de IIS Manager (%SystemRoot%System32InetsrvInetmgr.exe). En Exchange 2016/2013 Mailbox y Client Access, las funciones se fusionan en una sola función (se eliminó la función CAS separada). Por lo tanto, en el servidor de buzones, los directorios virtuales se encuentran en 2 sitios diferentes:

  • En un sitio web predeterminado sitio (escuchando los puertos TCP 80, 443);
  • En una ExchangeBackEnd sitio (escuchando los puertos TCP 81, 444).

Recrear directorios virtuales OWA y ECP en Exchange

Los directorios virtuales OWA y ECP en la consola del Administrador de IIS se ven así:

eliminar-owavirtualdirectory

Insinuación. Lista completa de directorios virtuales de IIS en Exchange Server:

  • EcpDirectorioVirtual (ecp);

  • OwaDirectorioVirtual (owa);

  • MapiDirectorioVirtual (mapi);

  • ActiveSyncVirtualDirectory (Microsoft-Server-ActiveSync);

  • Detección automática de directorio virtual (detección automática);

  • Directorio virtual OAB (OAB);

  • directorio virtual de PowerShell (PowerShell);

  • Directorio virtual de servicios web (EWS).

Debe obtener el nombre completo del directorio virtual en el que se observan los problemas. Para hacer esto, inicie la consola Shell de administración de Exchange.

Insinuación. Puede cargar el complemento PowerShell de administración de Microsoft Exchange en la sesión actual de PowerShell sin iniciar EMS:

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn

Muestre una lista de todas las carpetas OWA en la organización de Exchange mediante el siguiente comando de PowerShell:

Get-OwaVirtualDirectory

En nuestro ejemplo, el nombre del directorio virtual de OWA: owa (sitio web predeterminado).

Lo mismo para el directorio virtual de ECP:

Get-ECPVirtualDirectory

Nos interesa el directorio ecp (sitio web predeterminado) en el servidor llamado EX2016.

recrear el directorio virtual ecp

Muestre y anote la configuración actual de los directorios virtuales OWA y ECP (ExternalURL, InternalURL, configuración de autenticación):

Get-OwaVirtualDirectory “ex2016owa (Default Web Site)”|select-object InternalUrl, ExternalUrl, BasicAuthentication,WindowsAuthentication,DigestAuthentication, FormsAuthentication
Get-EcpVirtualDirectory “ex2016ecp (Default Web Site)”|select-object InternalUrl, ExternalUrl, BasicAuthentication,WindowsAuthentication,DigestAuthentication, FormsAuthentication

Nota. Cambie ex2016 por el nombre de su servidor de Exchange.

recrear el intercambio de directorio virtual de owa 2016

Elimine el directorio virtual de OWA en el servidor llamado ex2016:

Remove-OwaVirtualDirectory “ex2016owa (Default Web Site)”

Cree un nuevo directorio OWA:

New-OwaVirtualDirectory  -InternalUrl “https://mail.contoso.local/owa” -ExternalUrl “https://mail.contoso.local/owa”

nuevo-owavirtualdirectory

Ahora elimine y vuelva a crear el directorio virtual de ECP de manera similar:

Remove-EcpVirtualDirectory -Identity “ex2016ecp (Default Web Site)”

New-EcpVirtualDirectory  -InternalUrl “https://mail.contoso.local/ecp” -ExternalUrl  “https://mail.contoso.local/ecp”

recrear directorios virtuales de intercambio 2016

En algunos casos, también es útil recrear OWA y ECP en el sitio de Exchange Back End:

remove-WebApplication -Site "Exchange Back End" -Name owa

remove-WebApplication -Site "Exchange Back End" -Name ecp

New-WebApplication -Site "Exchange Back End" -Name owa -PhysicalPath "C:Program FilesMicrosoftExchange ServerV15ClientAccessowa" -ApplicationPool MSExchangeOWAAppPool

New-WebApplication -Site "Exchange Back End" -Name ecp -PhysicalPath "C:Program FilesMicrosoftExchange ServerV15ClientAccessecp" -ApplicationPool MSExchangeECPAppPool

Reconstrucción de otros directorios virtuales de Exchange mediante PowerShell

Anteriormente hemos cubierto cómo reparar directorios virtuales OWA y ECP. Estos directorios virtuales de Exchange causan problemas con mayor frecuencia. Sin embargo, existen varios directorios virtuales de servicios en Exchange. Los problemas con ellos ocurren con menos frecuencia, pero en algunos casos, también tendrá que volver a crearlos desde cero.

Puede obtener información sobre otros directorios virtuales de Exchange mediante los cmdlets de EMS:

Get-AutodiscoverVirtualDirectory

Get-OABVirtualDirectory

Get-MapiVirtualDirectory

Get-ActiveSyncVirtualDirectory

Get-PowerShellVirtualDirectory

Get-WebServicesVirtualDirectory

Los siguientes cmdlets se utilizan para eliminar estos directorios virtuales de Exchange:

Remove-ActiveSyncVirtualDirectory -Identity "ex2016Microsoft-Server-ActiveSync (Default Web Site)"

Remove-OabVirtualDirectory -Identity "ex2016OAB (Default Web Site)"

Remove-MapiVirtualDirectory -Identity "ex2016mapi (Default Web Site)"

Remove-AutodiscoverVirtualDirectory -Identity "ex2016Autodiscover (Default Web Site)"

Remove-PowerShellVirtualDirectory -Identity "ex2016PowerShell (Default Web Site)"

Remove-WebServicesVirtualDirectory -Identity "ex2016EWS (Default Web Site)" -Confirm:$True

La siguiente tabla enumera los métodos de autenticación de IIS predeterminados que están habilitados de manera predeterminada para varios directorios virtuales de Exchange:

directorio virtual Métodos de autenticación predeterminados de IIS
OWA Autenticación anónima

Autenticación de Windows

PAE
Detección automática
SAT
MAPI

owaCalendario

Autenticación anónima
Microsoft-Server-ActiveSync Autenticación básica
OAB Autenticación de Windows
Potencia Shell
Rpc

Para crear estos directorios virtuales de Exchange, utilice:

New-ActiveSyncVirtualDirectory -Server "ex2016" -InternalUrl "https://mail.contoso.local/Microsoft-Server-ActiveSync" -ExternalUrl "https://mail.contoso.local/Microsoft-Server-ActiveSync"

New-AutodiscoverVirtualDirectory -Server "ex2016" -BasicAuthentication $true -WindowsAuthentication $true

Set-ClientAccessServer -Identity "ex2016" -AutodiscoverServiceInternalUri https://autodiscover.contoso.local/Autodiscover/Autodiscover.xml

New-MapiVirtualDirectory -Server "ex2016" -InternalUrl https://mail.contoso.local/mapi -ExternalUrl https://mail.contoso.local/mapi -IISAuthenticationMethods Ntlm, OAuth, Negotiate

New-OabVirtualDirectory -Server "ex2016" -InternalUrl "https://mail.contoso.local/OAB" -ExternalUrl "https://mail.contoso.local/OAB"

New-PowerShellVirtualDirectory -Server "ex2016" -Name Powershell -InternalUrl https://mail.contoso.local/PowerShell -ExternalUrl https://mail.contoso.local/PowerShell -RequireSSL:$false

New-WebServicesVirtualDirectory -Server "ex2016" -InternalUrl "https://mail.contoso.local/EWS/Exchange.asmx" -ExternalUrl "https://mail.contoso.local/EWS/Exchange.asmx"

Reinicie IIS o reinicie el host de Exchange Server.

Ahora abra el navegador e inicie sesión en el Centro de administración de Exchange (EAC) mediante el vínculo https://ex2016.contoso.com/ECP. Seleccione Servidores elemento en el panel izquierdo y haga clic en Directorios virtuales en el menú superior. En el Seleccionar servidor seleccione el nombre del host de Exchange en el que recreó los directorios virtuales. Verifique que todos los directorios virtuales de Exchange que volvió a crear anteriormente ahora se muestran en la consola EAC.

get-ecpvirtualdirectory

De la misma manera, puede restablecer y volver a crear todos los directorios virtuales (OAB, EWS y Detección automática) en Exchange 2019/2016/2013.

New-OwaVirtualDirectory: se produjo un error al crear el directorio virtual de IIS

En algunos casos, al volver a crear un directorio virtual en Exchange mediante los cmdlets New-OwaVirtualDirectory o New-OwaVirtualDirectory, es posible que reciba un error:

Se produjo un error al crear el directorio virtual de IIS `IIS://Exch2016/W3SVC/1/ROOT/ECP'

O:

La configuración de AD para el directorio virtual 'owa' ya existe en 'CN=xxx', elimine esta configuración de AD manualmente.

reconstruir el directorio virtual de owa

Este error se produjo porque la metabase de IIS dejó un registro del directorio virtual creado, lo que impide que el cmdlet New-EcpVirtualDirectory cree un nuevo directorio.

Es importante comprender que los directorios virtuales de Exchange se almacenan en dos ubicaciones: Active Directory e IIS. El cmdlet Get-EcpVirtualDirectory (o un cmdlet similar para diferentes directorios virtuales) obtiene información de AD y no de la configuración de IIS.

El cmdlet Remove-XXXVirtualDirectory elimina el directorio virtual de Exchange de AD.

Ejecute la herramienta ADSI Edit y conéctese a la configuración de su dominio. Vaya a la siguiente partición de configuración del directorio: CN=Configuración > CN=Servicios > CN= Microsoft Exchange > CN=SuNombredeExchange > CN=Grupos Administrativos > CN=Grupos Administrativos de Exchange > CN=Servidores > CN=SuNombreDeExchangeServer > CN=Protocolos > CN= HTTP. Busque el directorio virtual que desea volver a crear en esta partición.

Si el directorio se elimina de IIS pero permanece en AD, primero debe eliminar el directorio de AD mediante el cmdlet Remove-XXXVirtualDirectory (donde XXX es el nombre del directorio: ECP, OWA, etc.).

Insinuación. No elimine los directorios virtuales de Exchange Server mediante el Administrador de IIS a menos que esté seguro de que sus metadatos no están almacenados en Active Directory.

recrear el directorio virtual de owa

Si el directorio todavía está en IIS pero se eliminó de la configuración de Active Directory, recibirá el siguiente error cuando intente volver a crearlo con el cmdlet de PowerShell New-XXXVirtualDirectory:

Se produjo un error al crear el directorio virtual de IIS 'IIS://ex2016/W3SVC/1/ROOT/owa' en ex2016′. Cmdlet-InvalidOperationExceptio:

En este caso, debe eliminarlo de la configuración de IIS. Para hacer esto, necesitamos la Explorador de metabases herramienta de la Kit de recursos de IIS 6 (que requiere la función Net Framework 3.5).

nuevo-ecpvirtualdirectory

Inicie IIS Metabase Explorer, vaya a Exchange > LM > W3SVC > 1 > ROOT. Elimine el directorio que desee haciendo clic derecho sobre él y eligiendo Eliminar.

reconstruir el directorio virtual ecp 2016

Reinicie IIS:

iisreset /force

Ahora intente crear el directorio virtual nuevamente usando los cmdlets New-EcpVirtualDirectory, New-OwaVirtualDirectory o New-WebApplication.

Recomendado para ti