Installation von ASP.NET Projekt auf IIS mit virtuellem Verzeichnis

Hallo zusammen,
neulich hatte ich bei einem Kundenprojekt das Problem, dass meine Anwendung im Browser immer eine Exception geworfen hat, sobald ein File geladen wurde. Wie sich später herausstelle lag das an unterschiedlichen Usercredentials des Web- und des Fileservers und den korrekten Einstellungen im IIS. In diesem Post möchte ich meine Vorgehensweise bei diesem Projekt beschreiben.
In diesem Post möchte ich meine Vorgehensweise in diesem Projekt darstellen. Dabei handelt es sich um eine ASP.NET Anwendung ohne Datenbank.

Vorbereitung

Zunächst kompiliert man das Projekt im Visual Studio unter „Erstellen“ und „Projekt veröffentlichen“. Ein neues Profil erstellen oder ein schon vorhandenes verwenden und bei Verbindung, bei der Veröffentlichungsmethode „Dateisystem“ und den Speicherort auswählen. Zu guter Letzt noch die Konfiguration auf Release setzen und das Projekt veröffentlichen.

Den kompilierten File in den wwwroot Ordner des gewünschten Webservers legen und den IIS starten. Der Ordner müsste jetzt im Verzeichnis des IIS liegen.

IIS Konfiguration

Zunächst sollte überprüft werden, falls man sich dessen nicht sicher ist, ob asp.NET unter den Features aktiviert wurde. Das findet man unter
Internetinformatinsdienste–>WWW-Dienste–> .NET-Erweiterbarkeit 4.6 und ASP.NET 4.6

Nun den IIS-Manager starten. Das Projekt sollte nun unter Default Web Site zu finden sein.

An dieser Stelle kommt der wichtigste Teil der Einstellung im IIS, damit der User auf Daten auf einem anderen Fileserver zugreifen kann.
Der Anwendungsuser muss in jedem Fall dem User des Fileservers entsprechen, da sonst kein Zugriff möglich ist! Unter den Anwendungspools kann der User gesetzt werden

.NET CLR Version v4.0 sollte Defaultmäßig drin sein, ebenso wie der verwaltete Pipelinemodus auf integriert steht. Auf „Ok“ und der Pool ist aktiviert und gestartet.

Rechtsklick auf den neu angelegten Pool auf Erweiterte Einstellungen und schließlich Identität und hier den User manuell setzen.

Nun geht man auf die Anwendung unter Default Web Site und sagt „In Anwendung konvertieren“ und wählt den richtigen Anwendungspool aus.
Zu guter Letzt wird ein Virtuelles Verzeichnis angelegt, dass uns den Zugriff auf einen Fileserver ermöglicht. In der Anwendung über Rechtsklick ein neues virtuelles Verzeichnis anlegen und einen Alias eingeben. Hier muss bei „Verbinden als…“ nun der selbe User angegeben werden wie vorher schon beim Anwendungspool. Bestätigen und die Anwendung kann gestartet werden.

So sollten keine Probleme geben, wenn File- und Webserver getrennt voneinander sind mit unterschiedlichen Usern und keine Exception mehr werfen.

Cheers,
Christian

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Captcha * Time limit is exhausted. Please reload CAPTCHA.