Weitergabe an Apache-Server
Nach oben zu RAD Studio-Anwendungen weitergeben
WebBroker unterstützt Apache ab der Version 1.3.9 bezüglich DLL- und CGI-Anwendungen.
Module und Anwendungen werden durch Anpassung der Apache-Datei httpd.conf (befindet sich normalerweise im Apache-Installationsverzeichnis \conf) konfiguriert und aktiviert.
Module aktivieren
Ihre DLLs sollten physisch im Apache-Unterverzeichnis für Module gespeichert sein.
Um ein Modul zu aktivieren, sind zwei Änderungen an der Datei httpd.conf erforderlich.
Zunächst müssen Sie eine LoadModule-Zeile einfügen, sodass Apache Ihre DLL lokalisiert und lädt. Ein Beispiel:
LoadModule MyApache_module modules/Project1.dll
Ersetzen Sie MyApache_module durch den exportierten Modulnamen aus Ihrer DLL. Suchen Sie nach der exports-Zeile, um den Modulnamen in Ihrer Projektquelle zu finden. Ein Beispiel:
exports apache_module name 'MyApache_module';
Fügen Sie dann einen Resource Locator Eintrag hinzu (dieser kann in httpd.conf an beliebiger Stelle, nach dem LoadModule-Eintrag eingefügt werden). Ein Beispiel:
# Beispiel einer Location-Angabe für ein Projekts mit dem Namen Project1: <Location /project1> SetHandler project1-handler </Location>
Damit werden alle Anforderungen an http://www.somedomain.com/project1 an das Apache-Modul übergeben.
Die Direktive SetHandler bestimmt, welche Web-Server-Anwendung die Anforderung bearbeitet. Als Argument dieser Direktive sollte der Wert der globalen Variablen ContentType benutzt werden.
CGI-Anwendungen
Bei der Erstellung von CGI-Anwendungen muss für das physische Verzeichnis (es ist in der Direktive Directory in der Datei Httpd.conf angegeben) die Option ExecCGI gesetzt sein, damit das CGI-Skript ausgeführt werden kann. Um das sicherzustellen, benutzen Sie die Direktive ScriptAlias mit den beiden aktivierten Optionen ExecCGI und SetHandler.
Anmerkung: Eine Alternative dazu ist die Verwendung der Direktive ScriptAlias (ohne die Option ExecCGI), jedoch kann diese Methode Ihre CGI-Anwendung darin hindern, Dateien in dem ScriptAlias-Verzeichnis zu lesen.
Die folgende httpd.conf-Zeile ist ein Beispiel für die Verwendung der Alias-Direktive, um eine virtuelles Verzeichnis auf Ihrem Server anzulegen und die exakte Position Ihres CGI-Scripts zu markieren:
Alias/MyWeb/"c:/httpd/docs/MyWeb/"
Dies würde bei Anfragen wie /MyWeb/mycgi.exe eine Ausführung des Scripts c:\httpd\docs\MyWeb\mycgi.exe bewirken.
Sie können mit der Direktive Directory aus http.conf auch Options auf All oder ExecCGI setzen. Die Direktive Options bestimmt, welche Serverfunktionen in einem bestimmten Verzeichnis verfügbar sind.
Die Direktive Directory wird benutzt, um eine Anzahl von Direktiven zusammenzufassen, die auf das benannte Verzeichnis oder dessen Unterverzeichnisse angewendet werden. Beispiel:
<Directory "c:/httpd/docs/MyWeb"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler cgi-script exe cgi </Directory>
In diesem Beispiel wird Options auf ExecCGI gesetzt, damit CGI-Skripts im Verzeichnis MyWeb ausgeführt werden können. Die AddHandler-Klausel teilt Apache mit, dass Dateien mit Erweiterungen wie exe und cgi (ausführbare) CGI-Scripts sind.
Anmerkung: Apache wird auf dem Server lokal unter dem Benutzerkonto ausgeführt, das in der Direktive User in der Datei httpd.conf angegeben ist. Stellen Sie sicher, das der Benutzer über die erforderliche Rechte verfügt, die er für den Zugriff auf die von der Anwendung benötigten Ressourcen benötigt.
Informationen über die Verteilung der Apache-Software sind in der Datei LICENSE enthalten, die zum Lieferumfang von Apache gehört. Weitere Informationen zur Apache-Konfiguration finden Sie unter http://www.apache.org.