WaBis

walter.bislins.ch

IIS für classic ASP und Access DB auf Windows 7/8/10 einrichten

Sonntag, 25. Mai 2014 - 00:24 | Autor: wabis | Themen: Wissen, Computer, Windows
Damit man klassische ASP Anwendungen unter IIS 7 (Internet Information Server) auf Windows 7/8 benutzen kann, muss man einiges beachten und konfigurieren.

Ich habe mehrere Websites mit klassic ASP entwickelt und möchte sie lokal auf meinem PC ausführen und testen können. Die verschiedenen Websites sind in verschiedenen Verzeichnissen abgelegt.

IIS Installieren

Voraussetzung ist Windows 7 Professional oder höher.

  1. Gehe in die Systemsteuerung / Programme
  2. Unter Programme und Funktionen auf Windows-Funktionen ein- oder ausschalten
  3. Klicke auf das + vor Internetinformationsdienste
  4. Aktiviere alle Punkte unter Webverwaltungstools
  5. Aktiviere alle Punkte unter WWW-Dienste
  6. Klicke auf OK

Nachdem der IIS nun installiert ist, muss er konfiguriert werden und es müssen ihm die nötigen Rechte gegeben werden, damit er auf die Verzeichnisse zugreifen kann.

Zugriffsrechte einstellen

Ich speichere meine Websites im Verzeichnis Eigene Webs auf meiner Festplatte. Damit der IIS auf dieses Verzeichnis zugreifen kann, muss er in die entsprechende UAC des Verzeichnisses eingetragen werden und die nötigen Rechte erhalten. Das geht so:

  1. Rechtsklick auf das Verzeichnis Eigene Webs, Eigenschaften anklicken
  2. Den Reiter Sicherheit anklicken
  3. Auf Bearbeiten klicken, um die Berechtigungen zu ändern
  4. Auf Hinzufügen klicken, um neue User oder Gruppen hinzuzufügen
  5. Auf Erweitert klicken, um nach Usern oder Gruppen zu suchen
  6. Auf Jetzt suchen klicken
  7. In der Liste auf IIS_IUSRS klicken und OK klicken
  8. IIS_IUSRS mit OK übernehmen
  9. Unter Berechtigungen für IIS_IUSRS bei Vollzugriff das Kästchen Zulassen aktivieren
  10. Schritte 4 - 9 für Gruppe IUSR wiederholen
  11. Dialogboxen mit OK schliessen

Diesen Schritt für jedes Verzeichnis wiederholen, unter welchem eine Website gespeichert ist. Nun hat der IIS die nötigen Zugriffsrechte.

IIS Konfigurieren

Ich verwalte mehrere Websites auf meinem PC, welche im Internet auf verschiedenen Servern gespeichert sind. Auf meiner Festplatte habe ich für jede Website ein eigenes Verzeichnis angelegt. Meine Homepage liegt im Ordner Eigene Webs. Über die Html-Seite 'index.html' in diesem Verzeichnis kann ich die verschiedenen Websites lokal im Browser anwählen. Die Seite index.html existiert im Internet nicht. Sie dient lediglich als lokales Verzeichnis meiner Websites.

(Klick: Zoom)
ZoomPfad zur Default Website

Die Seite index.html möchte ich unter der URL localhost aufrufen können. Dazu muss ich Eigene Webs als Default Web konfigurieren:

  1. Klicke in der Systemsteuerung auf System und Wartung und dort auf Verwaltung
  2. Doppelklicke auf Internetinformationsdienste-Manager
  3. Suche im linken Bereich Verbindungen unter Websites oder Sites die Default Web Site (oder ähnlich) und klicke darauf
  4. Klicke im rechten Bereich auf Erweiterte Einstellungen
  5. Klicke auf Physikalischer Pfad und gib dort den Pfad zu Eigene Webs ein (mittels der Schaltfläche [...] danach suchen)
  6. Klicke auf OK

Damit sollte im Browser unter localhost die Seite index.html erscheinen.

IIS Debugging aktivieren

(Klick: Zoom)
ZoomDebugging aktivieren

Nun muss noch der IIS für das Debugging konfiguriert werden. Dies geschieht ebenfalls von der Management-Konsole aus:

  1. Doppelklicke bei aktivierter Default Website das Symbol ASP
  2. Klicke auf das + vor Debugeigenschaften
  3. setze den Wert Clientseitiges Debuggen aktivieren auf true (per Doppelklick)
  4. Fehler an Browser senden = true
  5. Serverseitiges Debuggen = true
  6. Wichtig für meine Anwendungen: Übergeordnete Pfade aktivieren = true!
  7. Klicke in der rechten Spalte auf Übernehmen

Weitere Websites einrichten

Meine Hauptwebsite www.bislins.ch möchte ich lokal unter localhost/bislins aufrufen können. Meine Sub-Website walter.bislins.ch möchte ich lokal unter localhost/walti aufrufen können.

Auf dem Webserver gibt es für die Domain bislins.ch ein Verzeichnis bislins/, unter welchem ich meine Website ablegen kann. Alle öffentlich zugänglichen Seiten und Dateien müssen im Unterverzeichnis bislins/public_html/ abgelegt werden. Geschützte Dateien, welche nicht direkt öffentlich zugänglich sind, zum Beispiel Datenbanken, können in beliebige Unterverzeichnisse direkt unter bislins/ abgelegt werden.

Meine Website ist so aufgebaut, dass unter www.bislins.ch die Datei bislins/public_html/index.html auf dem Webserver aufgerufen wird. Da ich für meine Geschwister eigene Sub-Domains anlegen wollte, enthält diese Datei ein Verzeichnis auf diese Sub-Websites. Meine eigene Website, welche unter walter.bislins.ch erreichbar ist, liegt im Server-Verzeichnis bislins/public_html/walti/.

Die Website auf der Festplatte meines PC's ist analog strukturiert, damit ich die Daten über ein FTP-Programm mit dem Webserver synchronisieren kann:

URL Verzeichnis auf dem Server lokale URL Verzeichnis auf dem PC
(-) (-) localhost Eigene Webs\
www.bislins.ch bislins/public_html/ localhost/bislins Eigene Webs\bislins\public_html\
walter.bislins.ch bislins/public_html/walti/ localhost/walti Eigene Webs\bislins\public_html\walti\
www.aphs.ch aphs/public_html/ localhost/aphs APhS-Web\public_html\

Damit ich die einzelnen (Sub)-Websites lokal unter localhost/site aufrufen kann, muss ich im Internetinformationsdienste-Manager entsprechende virtuelle Verzeichnisse anlegen.

Die Haupt-Website www.bislins.ch soll unter localhost/bislins aufgerufen werden können. Dies erreiche ich folgendermassen:

Öffnen der Management-Konsole

  1. Klicke in der Systemsteuerung auf System und Wartung und dort auf Verwaltung
  2. Doppelklicke auf Internetinformationsdienste-Manager

Websites hinzufügen

  1. In der Management-Konsole Default Website rechtsklicken und Virtuelles Verzeichnis hinzufügen klicken
  2. Alias: bislins
  3. Physikalischer Pfad: C:\Users\walti\Eigene Webs\bislins\public_html
  4. OK klicken

Die Haupt-Website www.aphs.ch soll unter localhost/aphs aufgerufen werden können. Dies erreiche ich folgendermassen:

  1. In der Management-Konsole Default Website rechtsklicken und Virtuelles Verzeichnis hinzufügen klicken
  2. Alias: aphs
  3. Physikalischer Pfad: C:\Users\walti\APhS-Web\public_html
  4. OK klicken

Die Sub-Website walter.bislins.ch soll unter localhost/walti aufgerufen werden können:

  1. In der Management-Konsole Default Website rechtsklicken und Virtuelles Verzeichnis hinzufügen klicken
  2. Alias: walti
  3. Physikalischer Pfad: C:\Users\walti\Eigene Webs\bislins\public_html\walti
  4. OK klicken

Die Schritte 1 - 4 für alle weiteren Sub-Webs wiederholen.

Upload-Limit erhöhen

  1. Gehe in die Systemsteuerung / Verwaltung und doppelklicke auf Internetinformationsdienste (IIS)-Manager
  2. Doppelklicke unter der Überschrift IIS das Modul ASP
  3. Öffne unter der Überschrift Verhalten die Eigenschaft Limiteigenschaften
  4. Erhöhe den Wert bei Limit für Entitätskörper in Anforderung z.B. auf 67 108 864 für 64 MB (entspricht 226)
  5. Klicke im rechten Fenster unter Aktionen auf Übernehmen
  6. Klicke im linken Fenster unter der Überschrift Verbindungen den obersten Eintrag, sodass wieder die Module angezeigt werden.
  7. Klicke im rechten Fenster unter Aktionen / Server verwalten auf Neu starten
(Klick: Zoom)
ZoomIIS Einstellungen Limits Timeout

Wenn alles geklappt hat, ist damit das Upload-Limit auf 64 MB erhöht.

Access Datenbank für Classic ASP in Windows 10 einrichten

(Klick: Zoom)
ZoomIIS Einstellung Application Pools
(Klick: Zoom)
Zoom32-Bit-Applikation aktivieren

Ich gehe davon aus, dass eine Access Datenbank unter Windows 7 einmal funktioniert hat. Ohne die folgenden Einstellungen funktioniert der Zugriff auf eine Datenbank unter Windows 10 nicht mehr. Es erscheint eine Fehlermeldung wie:

Assertion Violation: CheckPassword: DB not open

Bei anderen Fehlermeldungen kann die folgende Website konsultiert werden, welche vielleicht weiterhilft:

 Using Classic ASP with Microsoft Access Databases on IIS

Grund: Bei 64 Bit-Systemen gibt es keine 64-Bit ODBC Treiber, welche für den Zugriff auf die Datenbank benötigt werden. Deshalb muss beim Application Pool der ASP Anwendung der 32 Bit Modus aktiviert werden [1].

Dies geht folgendermassen:

  1. Gehe in die Systemsteuerung / Verwaltung und doppelklicke auf Internetinformationsdienste (IIS)-Manager
  2. Klicke im linken Bereich unter der Überschrift Verbindungen auf den Eintrag Anwendungspools
  3. Klicke im mittleren Bereich auf DefaultAppPool
  4. Klicke im rechten Bereich Aktionen auf Erweiterte Einstellungen...
  5. Setze den Wert bei 32-Bit-Anwenundungen aktivieren den Wert auf true (durch Doppelklick auf false)
  6. Klicke auf OK

Getestet mit

  • Windows Vista Ultimate
  • Windows 7 Professional
  • Windows 8.1
  • Windows 10 Professional

Weitere Informationen

Using Classic ASP with Microsoft Access Databases on IIS
http://www.iis.net/learn/application-frameworks/running-classic-asp-applications-on-iis-7-and-iis-8/using-classic-asp-with-microsoft-access-databases-on-iis
Dein Kommentar zu diesem Artikel
Name
Email optional; wird nicht angezeigt
Kommentar
  • Name wird bei deinem Kommentar angezeigt.
  • Email ist nur für den Administrator, sie wird nicht angezeigt.
  • Du kannst deine Kommentare eine Zeit lang editieren oder löschen.
  • Du kannst Formatierungen im Kommentar verwenden, z.B: Code, Formeln, usw.
  • Externen Links und Bilder werden nicht angezeigt, bis sie der Admin freischaltet.
Weitere Infos zur Seite
Erzeugt Freitag, 23. Mai 2014
von wabis
Zum Seitenanfang
Geändert Samstag, 9. Januar 2016
von wabis