Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
BeiträgeC++DelphiIDEInterBaseMobile Entwicklung

Installation des „RAD Server“ auf Windows 2019 (oder Windows 10) mit IIS 10

radconsoleport80

Vor einigen Tagen haben wir die Installationsdateien für die RAD Server Installation optimiert. Einer Installation steht damit auch unter neueren Windows Versionen (mit dem korrespondierendem IIS 10; Internet Information Server, der WebServer von Microsoft) nichts mehr im Wege. Man sollte nur einige Punkte beachten.

Offiziell unterstützt Embarcadero den RAD Server nur mit dem IIS 7 (siehe auch http://docwiki.embarcadero.com/RADStudio/Sydney/de/Installieren_der_RAD_-Server_oder_RAD_Server_Console_in_einer_Produktionsumgebung_unter_Windows). Aber das ist nun wirklich etwas an der Praxis vorbei…..

Was man braucht

  • Eine RAD Studio (Delphi / C++Builder) IDE (installiert, um Zugriff auf das GetIt Paket zu haben; dazu gleich mehr)
  • Ein Windows System, auf dem der IIS installiert werden soll (hier: Ein separates Windows Server 2019)
  • Eine RAD Server Seriennummer
  • Internetzugang auf dem Produktionsrechner

Anleitung

Zuerst installiert man auf dem Zielsystem den IIS. Innerhalb von Windows 2019 über den Server-Manager: Während der Installation (mit den Grundpaketen des IIS; also inkl IIS Verwaltungskonsole) müssen auch die ISAPI-Erweiterungen installiert werden (findet man während der Installation unter Rollendienste / Anwendungsentwicklung):

iisinstallieren

Man kann kurz den IIS testen, ob dieser läuft: Standardwebsite sollte das bekannte Bild liefern:

iisinstalliert

Danach besorgt man sich im RAD Studio (Delphi und/oder C++Builder) die Installationspakete für den RAD Server. Diese befinden sich im GetIt Paketmanager (Tools | GetIt-Package-Manager). Unter dem Stickwort (Suchfeld) „RAD Server“ sollte folgendes erscheinen:

getitsuchenachradserver

Hier lädt man sich das Installerpaket herunter. Dieses Installerpaket beinhaltet zwei Dinge: Die eigentliche RAD Server Installation (für IIS, Apache; inklusive den notwendigen BPLs, DLLs für eine Grundinstallation) und ein InterBase 2020 (für die Konfigurationsdaten des RAD Servers). Nach dem Download des Pakets „RAD Server Installer for Windows 1.0“ öffnet sich der Windows (Datei) Explorer und zeigt die heruntergeladenen Dateien an (Verzeichnis C:Users<UserName>DocumentsEmbarcaderoStudio21.0CatalogRepositoryRADServerInstallerforWindows-104-1.0):

windows explorermitradserverdateien

NB: Lassen Sie sich nicht von der Versionsnummer „1.0“ irritieren. Dieses Paket wurde in letzter Zeit häufiger/regelmäßig aktualisiert. Stand heute: Dateidatum 22. August 2020

Aus diesem Verzeichnis kopiert man (per FTP, File-Sharing, USB Stick, …..) die zwei Dateien auf das Zielsystem:

  • RADServer.exe
  • InterBase_2020_Windows.zip

Diese beiden Dateien beinhalten alles Notwendige für die Installation auf dem Windows Server und sollen auf dem Zielsystem in ein gemeinsames Verzeichnis kopiert werden. Hier auf dem Desktop:

dateienaufwindowsserver2019

Man startet die RADServer.exe. Diese Installation ist relativ simpel durchzuführen. Einige Punkte gibt es aber zu beachten:

  • Minimal muss „RAD Server DB (InterBase 2020)“ und „RAD Server“ installiert werden. Eine vollständige Installation ist zu empfehlen
  • Die Architektur (32/64 Bit) sollte man auf 64 Bit auswählen (der IIS unterstützt zwar auch das Ausführen von 32 Bit ISAPI-DLLs; dies erfordert aber Konfigurationsaufwand)
  • Webserver: Hier IIS (logisch)
  • Standardverzeichnis: C:inetpubRADServer
  • Sitenamen radserver / radconsole (spiegelt den Teil der URL wieder, über den man seine Endpoints erreicht)
  • Sitename (für die Konfiguration innerhalb der IIS Verwaltung: RAD Server / Port 80)

Der Port 80 kollidiert natürlich erstmal mit der Standardsite vom IIS. Dazu später mehr

Die Installation installiert nun einen InterBase 2020 Server, der aktiviert werden muss. Dies sollte man unbedingt schon jetzt durchführen (die Installationsroutine „RADServer.exe“ konfiguriert auch alle notwendigen Einstellungen für die EMSServer.ini, den InterBase Server etc. Dazu ist es notwendig, daß der InterBase Server auch schon läuft!)

licenseinterbase

Im Hintergrund sieht man den Registrierungsexperten, wo man seinen RASD Server aktiviert/lizensiert. Ich wiederhole es gerne: Hier einen RAD Server Key angeben; kein RAD Studio, kein Delphi, keinen normalen InterBase Key:

Registrieren -> Seriennummer angeben

regradserver

Erfolg:

radservermultisiteregistered

Den Registrierungsexperten schliessen („OK“)

licenseinterbase

Hier kann man dann beherzt „Continue“ auswählen….

Während der weiteren Installation kommen zwei Fehlermeldungen / Hinweise, die aber nicht dramatisch sind:

ibclient64error

Hier hat man eine schöne Möglichkeit (man soll ja das Positive sehen), um zu überprüfen, ob der InterBase Server läuft. Über den „InterBase Server Manager“ aus dem Start-Menü von Windows sollte dieser als „Running“ dargestellt werden. Die Fehlermeldung bestätigt man mit „Yes to All“.

Für alle, die es interessiert (Optional): Bevor man die Installation abschliesst, finden sich die ausgeführten PowerScript Befehle im %TEMP% Verzeichnis. Hier ist es das Verzeichnis C:UsersAdministratorAppDataLocalTempI1604922298InstallerDataDisk1InstDataResource1.zip$IA_PROJECT_DIR$). Interessant sind hier zwei Dateien (für IIS): RADServer_IIS_Config.ps1 und RADConsole_IIS_Config.ps1. Ich hab diese hier mal dargestellt.

RADServer_IIS_Config.ps1

Aufruf von der BAT

PowerShell -NoProfile -ExecutionPolicy Bypass -Command „& {Start-Process %WINDIR%sysnativeWindowsPowerShellv1.0powershell.exe -ArgumentList ‚-NoExit -NoProfile -ExecutionPolicy Bypass -File „“““%PowerShellScriptPath%““““ -SiteName „““%2″““ -Port „“““%3″“““ -RootPath „““%4″““ -SiteDirectory „““%5″““ -Architecture „““%6″““ -INIFilePath „““%7″““ -SelectedFeatures „““%8″““ ‚ -Verb RunAs}“;

RADConsole_IIS_Config.ps1

Nach dem endgültigem Abschluss der Installation sollte der Server schon (fast!) laufen 🙂

Wir erinnern uns (wenn so angegeben): Die Site läuft auf dem Port 80, wo auch die Standardsite vom IIS läuft. Wir schalten also die Standardsite ab (je nach Wunsch / Konfiguration) und starten die „RAD Server Site“: Das geht im IIS Manager. Hier also die Standardsite („Default Web Site“) stoppen und dafür die „RAD Server“ Site starten:

stopdefaultstartradserver

Anschliessend sollte folgender Aufruf funktionieren (Internet Explorer; auf dem Zielsystem direkt):

http://localhost/radserver/emsserver.dll

Oder auch

http://localhost/radserver/emsserver.dll/version

Der Internet Explorer weiß aber nix von JSON Dateien:

versioninfoemsserver

Auch das kann man ihm abgewöhnen (optional!). Eine Datei mit der Endung REG:

Das klappt’s auch mit dem IE:

ieok

Eigentlich war es das „schon“..

Bemerkungen:

  • Die RADServer.exe Installation hat auch eine EMSServer.ini Datei hier abgelegt und konfiguriert:
    „C:UsersPublicDocumentsEmbarcaderoEMSemsserver.ini“
    Hier sind auch die wichtigsten Konfig-Parameter richtig gesetzt
  • Wo die Datei liegt, steht in der Regsitry:
    HKEY_LOCAL_MACHINESOFTWAREEmbarcaderoEMS
  • Eigene BPLs können natürlich irgendwo im Dateisystem stehen; brauchen aber dann eventuell auch noch einen Rattenschwanz an weiteren DLLs/BPLs
    Zum Testen kann man einfach seine erste BPL (Standard-RAD-Server-Beispiel) in der EMSSERVER.INI angeben:
    Abschnitt [Server.Packages]
  • Manchmal kommt es vor, daß die RAD Server Console (http://localhost/radconsole/emsconsole.dll) nur ein LOADING angibt:
    emsconsoleloading
    Lösung: Einmal die „C:inetpubRADServerradconsoleEMSDevConsole.exe“ aufrufen. Einloggen (consoleuser/consolepass). Dann geht’s (über den Port 8081 und dann auch über den normalen Port 80)
    radconsolelogin
    Anschliessend über den normalen Port 80:
    radconsoleport80
See What's New in 12.2 Athens See What's New in 12.2 Athens Dev Days of Summer 2-24

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Kommentieren

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

IN THE ARTICLES