Exchange Server web.config wiederherstellen
Die web.config der virtuellen Verzeichnisse befinden sich im Exchange Installationsordner, standardmäßig unter
C:\Program Files\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\<virtuellesVerzeichnis> für das Frontend (Default Website)
C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\<virtuellesVerzeichnis> für das Backend.
Für die ECP liegt diese also standardmäßig unter
C:\Program Files\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\ecp\web.config (Frontend)
C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp\web.config (Backend)
Wer den Installationspfad seines Exchange Servers nicht kennt, kann über den IIS überprüfen, an welcher Stelle die web.config liegt. Über die Auswahl des jeweiligen Verzeichnisses --> Explore wird der Pfad aufgerufen.
Wie wirkt sich eine fehlende web.config auf das System aus?
Sollte die web.config im Frontend (Default Website) der ECP nicht vorhanden sein, wird typischerweise ein Parser Error protokolliert:
Ist die web.config vorhanden, jedoch leer oder andere Probleme liegen vor, erscheint ein „HTTP Error 500.19 - Internal Server Error“:
Gegenbenfalls steht im Bereich der Config Source noch die Zeile in der web.config welche den Fehler verursacht. Sollte die web.config im Backend der ECP nicht vorhanden sein hat das typischerweise die Auswirkung, dass die Website nach der Anmeldung nicht erreichbar ist. Es erscheinen Meldungen wie „HTTP Error 500.19 – Internal Server Error“ (wenn die web.config vorhanden, aber leer ist):
oder „Object reference not set to an instance of an object” (wenn die web.config gar nicht vorhanden ist):
oder “Could not load file or assembly”:
Wie lässt sich nun das Problem beheben?
Microsoft stellt zwei Skripte (UpdateCas.ps1 und UpdateConfigFiles.ps1) bereit, die unter anderem das Neuanlegen der web.config im Backend hervorrufen sollen. Die Skripte befinden sich im Exchange Installationspfad, standardmäßig unter C:\Program Files\Microsoft\Exchange Server\V15\Bin.
Bevor die Skripte ausgeführt werden können, müssen zunächst die Pfade im IIS überprüft werden:
IIS Öffnen
Exchange Backend Website wählen
ECP Virtual Directory auswählen
Application settings > BinsearchFolder.
Hier müssen die absoluten Pfade eingetragen sein und nicht die relativen.
Diese sind standardmäßig:
C:\Program Files\Microsoft\Exchange Server\V15\bin;
C:\Program Files\Microsoft\ExchangeServer\V15\bin\CmdletExtensionAgents;
C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa\bin
Anschließend können die Skripte in folgender Reihenfolge über die PowerShell ausgeführt werden:
UpdateCas.ps1
UpdateConfigFiles.ps1
Eine weitere Methode, um die web.config wiederherzustellen, im Backend oder Frontend, ist eine bestehende web.config von einem anderen Exchange Server in der Umgebung zu verwenden. Dafür wird die web.config von einem anderen Server in der Umgebung in den Speicherort des virtuellen Verzeichnisses kopiert, in welchem die web.config fehlt und dann die serverspezifischen Einträge ausgetauscht.
Dies sind in der web.config typischerweise die Einträge
<add name="X-DiagInfo" value="EX2" />
<add name="X-BEServer" value="EX2" />
Wobei EX2 für den Server steht, auf welchem die web.config liegt. Der Eintrag muss dementsprechend an den vorliegenden Server angepasst werden.
Alternativ kann auf die web.config.bak des jeweiligen virtuellen Verzeichnisses zurückgegriffen werden. Diese befindet sich wieder im Installationsverzeichnis des Exchange Servers, standardmäßig unter C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\<virtuellesVerzeichnis>
Die web.config.bak muss hierfür lediglich ins selbe Verzeichnis kopiert und zu web.config umbenannt werden. Sollten anschließend weiterhin Probleme an der web.config bestehen, kann es helfen eine Exchange Reparatur durchzuführen. Hierfür wird die aktuell verwendete CU-Version benötigt.
Setup.EXE /M:Upgrade /IAcceptExchangeServerLicenseTerms
Sollten Sie weitere Fragen haben, können Sie uns unter support@ESCde.net oder https://www.escde.net/kontakt kontaktieren.
MEHR BLOG-KATEGORIEN
- ASP.NET
- Active Directory
- Administration Tools
- Allgemein
- Backup
- ChatBots
- Configuration Manager
- DNS
- Data Protection Manager
- Deployment
- Endpoint Protection
- Exchange Server
- Gruppenrichtlinien
- Hyper-V
- Intune
- Konferenz
- Künstliche Intelligenz
- Linux
- Microsoft Office
- Microsoft Teams
- Office 365
- Office Web App Server
- Powershell
- Remote Desktop Server
- Remote Server
- SQL Server
- Sharepoint Server
- Sicherheit
- System Center
- Training
- Verschlüsselung
- Virtual Machine Manager
- Visual Studio
- WSUS
- Windows 10
- Windows 8
- Windows Azure
- Windows Client
- Windows Server
- Windows Server 2012
- Windows Server 2012R2
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
- Zertifikate