HowTo: ASP.NET Anwendungen auf IIS6/7 & co. zum Laufen bekommen

imageDer IIS (insbesondere der IIS6) kann sich unter Umständen recht zickig anstellen wenn man eine ASP.NET (oder noch schlimmer: ASP.NET MVC) Anwendung zum Laufen bekommen möchte. Hier ein paar zusammengestellte Tipps für Windows Server 2003 (IIS6) und spätere Versionen. (IIS7 / IIS7.5)

Die Tipps gelten für Windows Server 2003 bzw. höhere Versionen – auch wenn es da deutlich einfacher geworden ist.

  • Ist die richtige .NET Version auf dem Server installiert?
    • Nachprüfen kann man das entweder über Programme/Software in der Systemsteuerung oder man schaut mal in den GAC (C:\Windows\assembly) ob dort .NET DLLs mit der nötigen Versionsnummer da sind.
    • Wenn es nicht installiert ist: Einfach die neuste Version installieren.
  • Ist auf dem Windows Server überhaupt der IIS installiert?
    • Nachprüfen kann man das in der Systemsteuerung unter Software/Programme. Der IIS ist unter den Windows Komponenten zu finden.
    • Wenn er nicht installiert ist: Den nächsten Punkt noch beachten.
  • Ist im IIS die .NET Unterstützung mit installiert? Im IIS 7 gibt es so genannte “Anwendungsentwicklungsfeatures” – dort ASP.NET mit anklicken. Im IIS6 gibt es glaub ich was ähnliches.
  • Jetzt muss man rausbekommen unter welcher Version die Anwendung laufen lassen möchte:
    • Im IIS6 ist das etwas magisch. Auf 32bit Maschinen gibt es unter Eigenschaften einer Webseite einen ASP.NET Tab – auf einer 64bit Maschine muss man erst mal irgendwelche RegistryKeys umändern. Allerdings läuft bei mir eine ASP.NET MVC Anwendung im IIS6 auch ohne das ich diesen Reiter hab. Wer ihn sieht, sollte mal nachschauen ob dort evtl. ASP.NET 1.1 ausgewählt ist.
    • Im IIS7 (und IIS7.5) wird dies über die Anwendungspools geregeltimage
  • Ganz wichtig: asp_regiis.exe
    • Diese Datei registriert macht ein paar wichtige Änderungen am IIS. Bis .NET 4.0 muss man diese Datei ausführen:
      • C:\Windows\Microsoft.NET\Framework\v2.0.50727\asp_regiis.exe -i
    • Ab .NET 4.0 gibt es eine neue Variante unter der Frameworkversion v4…
  • Wenn man eine ASP.NET MVC Anwendung unter IIS6 zum Laufen bringen soll: Ein Wildcard Mapping auf die aspnet_isapi.dll & deaktivieren von “Verify that the file exists” unter den Konfigurationsoptionen im Basisverzeichnis Tab oder diese Tipps befolgen: image

 

 

 

 

 

 

 

 

Wenn diese Punkte schon mal erfüllt sind, kann es z.B. noch ein Problem mit Schreibrechten geben bzw. wenn die Anwendung unter einem speziellen Account läuft zu Problemen kommen.

  • Hat der User unter dem die Anwendung läuft Schreib- & Leserechte auf den Ordner. Siehe auch hier.
  • Ist der User unter dem die Anwendung läuft auch Mitglied der Windows Gruppe IIS_WPG (IIS6) bzw. IIS_IUSRS

Wenn es nicht eine ganz exotische Anwendung ist, sollte diese spätestens nun auch laufen. Ansonsten lohnt ein Blick in den Windowslog. Wenn ich doch etwas vergessen habe, dann werde ich dies hier weiterführen :)


Kick It auf dotnet-kicks.de
Wenn dir der Blogpost gefallen hat, dann hinterlasse doch einen Kommentar. Wenn du auf dem Laufenden bleiben willst, abonniere unseren RSS Feed oder folge uns auf Twitter.

About the author

Written by Robert Mühsig

Robert Mühsig (@robert0muehsig) ist Webentwickler und beschäftigt sich mit Web-Frameworks (vor allem dem ASP.NET MVC Framework) und scheut sich auch nicht vor Javascript. Ansonsten bloggt er über all jene Probleme, die ihm über den Weg laufen. Seit 2008 ist er Microsoft MVP für ASP.NET und er arbeitet bei der T-Systems Multimedia Solutions GmbH in Dresden. Treffen kann man ihn online via Twitter (@robert0muehsig) oder dieser Seite oder bei der .NET User Group Dresden.

2 Responses

  1. Passend dazu habe ich heute noch was gelesen:
    Im IIS 6 dürfen nur Anwendung einer .Net Version gemeinsam in einem Application Pool laufen.
    Deswegen sind die Framework-Einstellungen beim IIS 7sicherlich auch in den Application Pool Settings zu finden und nicht mehr direkt in der Website.

    Reply

Comment on this post

Letzte Posts

  • Carriage Return / Neue Zeile in Textareas

    Eine kleine Aufgabe: Jede neue Textzeile (Carriage Return/Wenn man Enter drückt ) in einer Textarea soll ein Element in einer Auflistung sein – wie mach ich das jetzt am einfachsten? Eigentlich ein grundlegendes Element im Web und der Nutzer macht bewusst Absätze – daher wäre es nur gerecht, wenn man das auch entsprechend würdigt. Kleine ...

  • image.png
    Doom, Quake, Wolfenstein & co. Source Code auf GitHub

    id Software, die Macher von Doom, Quake, Wolfenstein & co., stellen regelmäßig ihre älteren Spieltitle als Open Source zur Verfügung. Das Ganze runterzuladen fand ich bisher immer recht mühselig, allerdings gibt es seit kurzer Zeit die Sourcen auch auf GitHub. Darunter Spiele wie Doom 3, Quake 3, Wolfenstein für iOS. Wer also schon immer mal ...

  • image.png
    Twitter Bootstrap 2.0 released & “Release Präsentation”

    Wie bereits vom Twitter Bootstrap Team angekündigt wurde offiziel die Version 2.0 des UI Toolskits “Twitter Bootstrap” veröffentlich. Zudem wurden die Slides, welche bei der Release Party gezeigt wurden auch veröffentlicht: Downloads finden sich auf der Twitter Bootstrap Seite auf GitHub. Wenn dir der Blogpost gefallen hat, dann hinterlasse doch einen Kommentar. Wenn du auf ...

  • image.png
    Javascript zu Dart Translator

    Dart, Google Javascript Alternative, wurde vor ein paar Monaten vorgestellt und die Webentwickler Szene ist noch etwas gespalten, ob Dart nun überflüssig ist oder einfach nur cool und längst überfällig ist. Um die Sprache näher zu erläutern hat Google die grundlegenden Javascript Basics nach Dart übersetzt. Das Ergebnis ist der “Translator”. Der Name mag momentan ...

  • Twitter Bootstrap 2.0–“Beta”

    Twitter Bootstrap, ein UI-Toolkit für Web-Applikationen von Twitter, erscheint (wie bereits berichtet) demnächst in der Version 2.0. Der offizielle Release ist am 31. Januar, allerdings beginnt jetzt laut Mark Otto (einer der Hauptentwickler von Twitter Bootstrap) die intensive Test-Phase. Das heisst, das es nun offiziel auch die 2.0 Dokumentation online gibt. Im Vergleich zur aktuellen ...

Support us!

Facebook