2009-03-12 7 views
27

Ich bin auf der Suche nach einer netten einfachen Schritt für Schritt "How To" Anleitung für eine klassische Asp-Anwendung arbeiten unter IIS 7.0.Wie für eine klassische Asp-Anwendung arbeiten unter IIS 7.0

Es ist auf einem 64-Bit-Windows-Server 2008-Maschine, wenn das einen Unterschied macht.

+0

Ich vermute, Sie meinen Windows 2008 Server? :) – Kev

+0

Verwenden Sie 32-Bit- oder 64-Bit-Windows, verwenden Sie Komponenten von Drittanbietern - ServerObjects, Persits? – Kev

+0

Nichts Besonderes abgesehen von der Verwendung eines SQL Server Express-Backends. 64 Bit Windows 2008 ... :) – GordyII

Antwort

44

Wir haben auf 64-Bit-Windows-2008 Hier einige klassische ASP-Code zu bewegen sind einige Dinge, die wir oder auf dem Weg entdeckt hat:

  • Beginnen Sie, indem Sie die Anwendung in einem ‚Classic‘ Hosting Pipeline-Modus Anwendungspool. Sobald die Dinge gut laufen, können Sie in den "Integrierten Modus" wechseln, wenn Sie die Funktionen, die zu einem späteren Zeitpunkt angeboten werden, nutzen möchten.

  • Wenn Ihre ASP-Anwendung jede 32-Bit-Dritten oder in-house Komponenten verbraucht müssen Sie die Anwendungspool konfigurieren, um in 32-Bit- Modus auszuführen. 32-Bit-DLLs werden nicht in einen 64-Bit-Prozess geladen. Sie können dies in den erweiterten Einstellungen eines Anwendungspools unter konfigurieren. Set Enable 32-Bit Applications zu True.

  • Um Bericht detaillierte Fehler erzwingen, indem klassische ASP, das ‚Feature‘ ASP-Seite öffnet für die Website erweitern Sie dann die Debugging Properties Knoten. Set Send Errors To Browser zu True.

  • Wenn Ihre Anwendung übergeordnete Pfade Sie diese benötigen, um in den ‚Feature‘ Einstellungen ASP zu konfigurieren Seite (gleiche wie oben). Die Einstellung ist unter dem Behaviour Knoten und heißt Enable Parent Paths. Die Standardeinstellung ist False wie bei IIS6.

  • Das standardmäßige anonyme Konto in IIS7 heißt IUSR. Sie können dies ändern durch Öffnen der Authentifizierung ' Einstellungen' Feature 'Seite für die Website und Bearbeiten die Anonymous Authentication Einstellung.

  • Bevorzugen sowohl für die Anwendung Pool und Website anonyme Konto Anwendungspoolidentitäten zu verwenden: Application Pool Identities

+3

Ich habe das ganze über "Anonymous Authentication" gesucht, das gesetzt werden muss. Ich hatte alles andere als das getan und konnte nicht verstehen, warum meine ASP-Anwendung versuchte, sich an den SQL-Server als "IUSR" anstelle der Identität des Anwendungspools anzumelden. –

+0

Ich dachte, anonyme Authentifizierung war eine binäre Einstellung - Es kann aktiviert oder deaktiviert werden. BIS, schaute ich auf Seitenleiste und sah eine Bearbeiten-Option, die uns mehr Einstellungen für die anonyme Authentifizierung bieten kann – Zasz

3

Beachten Sie auch, dass, wenn Sie 32-Bit-DLLs registrieren müssen, während IIS im 32-Bit-Modus ausgeführt wird, Sie sollten \ windows \ syswow64 \ regsvr32.exe dllname.dll verwenden.

Oh, und stellen Sie sicher, dass Sie nicht serverseitigen Debugging zu lange eingeschaltet haben. Dies führt dazu, dass IIS im Singlethread-Modus ausgeführt wird (und es sehr langsam macht).

+0

Ich habe gerade herausgefunden, dass "regsvr32.exe" weiß, um die "richtige Sache" zu tun, so dass Sie nicht wirklich müssen Spezifizieren Sie die 32 oder 64 Bit Versionen. Dachte, ich würde teilen. – Kev

5

Ich weiß, dass dies ein 5 Jahre alter Thread ist, aber er ist immer noch relevant für diejenigen von uns, die die Migration/Aktualisierung alter ASP-Apps verzögert haben.

Es ist etwas sehr Wichtiges hier, dass ich mir für 2 Stunden den Kopf zerbrach. Wie in der Welt bringen Sie eine ASP-Anwendung in einen Anwendungspool, Sie können ASP-Seiten nicht zu einer Anwendung machen, sie sind nur nicht kompatible Technologien.

Nun, in einem DUHH-Moment entdeckte ich, dass der gesamten Site ein Anwendungspool zugewiesen wurde. Gehen Sie einfach auf Ihre Site unter "Sites" und wählen Sie Grundeinstellungen und weisen Sie einen Anwendungspool zu.

Der ganze Rest ist eine großartige Information, einschließlich der Registrierung Ihrer DLLs und ich weiß nicht, ob es in diesem Thread, sondern auch Ihre ODBC-Verbindungen 32 und 64 Bit mit den zwei verschiedenen odbcad32.exe-Anwendungen.

Nochmals vielen Dank, (5 Jahre zu spät).