Version 2004 (Geändert)
Sie können die Operation des 4D Web Server in den Einstellungen der Datenbank mit den Parametern unter dem Thema Web konfigurieren. Dieser Abschnitt beschreibt die Seiten Konfiguration, Erweitert und Optionen unter diesem Thema sowie die Seite Kompatiblitiät unter dem Thema Anwendung.
Seite Konfiguration
Automatisch starten
Gibt an, ob der Web Server beim Starten der 4D Anwendung ebenfalls gestartet wird. Weitere Informationen dazu finden Sie im Abschnitt Web Server konfigurieren und Verbindung verwalten.
TCP Ports
4D veröffentlicht eine Web Datenbank standardmäßig auf dem regulären Web TCP Port, also Port 80. Wird dieser Port bereits von einem anderen Web Dienst benutzt, müssen Sie den von 4D verwendeten TCP Port für diese Datenbank ändern. Durch Ändern des TCP Ports können Sie den 4D Web Server unter MacOSX starten, ohne der Root Benutzer des Rechners zu sein. Weitere Informationen dazu finden Sie im Abschnitt Web Server konfigurieren und Verbindung verwalten.
Gehen Sie zum Eingabebereich für den TCP Port und geben Sie einen geeigneten Wert an, d.h. eine Nummer, die noch nicht von einem anderen TCP/IP Dienst auf demselben Rechner benutzt wird.
Hinweis: Tragen Sie Null (0) ein, verwendet 4D die standardmäßige TCP Portnummer 80.
Von einem Web Browser aus müssen Sie nun diese spezifische Nummer des TCP Port in die Adresse eingeben, mit der Sie die Verbindung zur Web Datenbank aufbauen. Das Ende der Adresse nach dem Doppelpunkt ist die Port-Nummer. Beispiel: Ihre Nummer für den TCP Port lautet 8080, Ihre Adresse ist demzufolge "123.4.567.89:8080.
Warnung: Wenn Sie nicht die Standardnummer 80 für den TCP Port verwenden, also 80 für den Standardmodus und 443 für den SSL Modus, achten Sie darauf, dass Sie nicht die Standard Ports anderer Dienste verwenden, die Sie zur gleichen Zeit einsetzen wollen. Wollen Sie z.B. auf Ihrem Web Server Rechner auch das FTP Protokoll verwenden, benützen Sie nicht die Nummern 20 und 21, denn das sind die Standardnummern für dieses Portokoll. Weitere Informationen zu den Standardnummern für TCP Ports finden Sie im Handbuch 4D Internet Commands in Appendix B, TCP Port Numbers. Port Nummern unter 256 sind für allgemein bekannte Dienste reserviert, Port Nummern zwischen 256 und 1024 für spezifische Dienste auf UNIX Plattformen. Benutzen Sie deshalb als Port Nummern am besten Zahlen im Tausender-Bereich.
IP Adresse für HTTP Anfragen definieren
Sie können IP Adressen festlegen, über die der Web Server HTTP Anfragen empfangen muss.
Der Server antwortet standardmäßig allen IP Adressen (Option Alle).
Die DropDown-Liste zeigt alle auf dem Rechner verfügbaren IP Adressen an. Wählen Sie eine spezifische Adresse, beantwortet der Server nur Anfragen an diese Adresse.
Diese Funktionalität benötigen Sie für 4D Web Server auf Rechnern mit mehreren TCP/IP Adressen. Das ist für die meisten Internet Host Provider der Fall.
Für ein MultiHoming System sind auf dem Rechner mit dem Web Server spezifische Konfigurationen erforderlich:
Sekundäre IP Adresse installieren
Zum Einrichten eines MultiHoming Systems sind je nach Betriebssystem spezifische Konfigurationen notwendig.
Auf Mac OS
Um ein MultiHoming System auf Mac OS einzurichten:
1. Benötigen Sie Open Transport Version 1.3 oder höher. Die neue Funktionalität ist erst ab dieser Version verfügbar.
2. Öffnen Sie das Steuerfenster TCP/IP.
3. Wählen Sie im PopUp-Menü Konfiguration die Option Manuell.
4. Legen Sie ein Textdokument mit Namen "Sekundäre IP Adressen" an und sichern es in Ihrem Systemordner im Unterordner Preferences.
Jede Zeile von "Sekundäre IP Adressen" besteht aus einer sekundären IP Adresse, einer optionalen Subnetz-Maske und einer dazugehörigen Router-Adresse.
Weitere Informationen dazu finden Sie in der Dokumentation zu Apple Open Transport.
Unter Windows
Um ein MultiHoming System unter Windows NT oder Windows 2000 einzurichten:
1. Wählen Sie folgende Befehlsfolge:
Windows NT: Menüleiste Start > Einstellungen > Systemsteuerung > Steuerfenster Netzwerk > Registerkarte Protokolle > TCP/IP Protokoll > Schaltfläche Eigenschaften > Schaltfläche Optionen.
Windows 2000: Menüleiste Start > Einstellungen > Netzwerk und DFÜ-Verbindungen > Steuerfenster LAN-Verbindung > Schaltfläche Eigenschaften > Komponente Internet Protokoll (TCP/IP) > Schaltfläche Eigenschaften > Schaltfläche Erweitert.
Auf dem Bildschirm erscheint das Dialogfenster "Erweiterte TCP/IP Einstellungen".
Windows XP: Menüleiste Start > Steuerung > Netzwerk und Internet-Verbindungen > Netzwerkverbindung > Local Area Connection (Eigenschaften) > Internet Protokoll (TCP/IP) > Schaltfläche Eigenschaften > Schaltfläche Erweitert.
Auf dem Bildschirm erscheint das Dialogfenster "Erweiterte TCP/IP Einstellungen".
2. Klicken Sie im Bereich "IP Adressen" auf die Schaltfläche Hinzufügen und fügen Sie zusätzliche IP Adressen ein. Sie können bis zu 5 verschiedene IP Adressen definieren.
Ziehen Sie bei Bedarf Ihren Systemadministrator zu Rate. Weitere Informationen finden Sie in der Dokumentation zu Windows.
SSL für Web Server erlauben
Zeigt an, ob der Web Server sichere Verbindungen akzeptiert. Weitere Informationen dazu finden Sie im Abschnitt SSL Protokoll.
HTTPS Port Nummer
Damit können Sie die Nummer des TCP/IP Port verändern, welche der Web Server für über SSL gesicherte HTTP Verbindungen (HTTPS Protokoll) verwendet. Standardmäßig ist die Nummer 443 eingetragen.
Es gibt zwei Hauptgründe, diese Port-Nummer zu ändern:
Aus Sicherheitsgründen: Hacker-Attacken auf Web Server konzentrieren sich in der Regel auf standardmäßige TCP Ports (80 und 443).
Damit Standardbenutzer auf MacOS X den Web Server im gesicherten Modus starten können. Auf Mac OS X sind für TCP/IP Ports, die für Veröffentlichungen im Web reserviert sind (0 bis 1023), bestimmte Zugriffsrechte erforderlich: Nur der Root Benutzer kann eine Verbindung über diese Ports öffnen. Damit auch Standardbenutzer den Web Server starten können, ist eine Lösung, die TCP/IP Port-Nummer zu ändern. Weitere Informationen dazu finden Sie im Abschnitt Web Server konfigurieren und Verbindung verwalten.
Sie können jeden gültigen Wert übergeben. Unter MacOS X sollten Sie zur Vermeidung von Zugriffskonflikten einen Wert größer als 1023 übergeben. Weitere Informationen zu TCP Port Nummern finden Sie im Abschnitt TCP Port.
Standard HTML Root
Hier bestimmen Sie einen Standardordner, in dem die Dateien der Web Site abgelegt werden, sowie die hierarchische Ebene auf der Festplatte, ab der die Dateien nicht zugänglich sind. Weitere Informationen dazu finden Sie im Abschnitt Sicherheit der Verbindung.
Standard Home Page
Damit definieren Sie für alle Browser, die sich an die Datenbank anmelden, eine Standard Home Page. Sie kann statisch oder halbdynamisch sein.
Beim ersten Start des Web Servers erstellt 4D eine Home Page mit Namen "index.html" und legt sie in den Ordner HTML Root. Verändern Sie diese Konfiguration nicht, erhält jeder Browser, der sich an den Web Server anmeldet, folgende Seite:
Um die Standard Home Page zu verändern, ersetzen Sie einfach im Root Ordner der Datenbank den Ordner "index.html" durch Ihren eigenen Ordner oder tragen Sie im Eingabebereich den Zugriffspfad in Bezug auf den dafür vorgesehenen Ordner ein.
Der Zugriffspfad muss in Bezug auf den Standard HTML Root Ordner eingerichtet werden.
Um die Plattformunabhängigkeit Ihrer Datenbanken zu gewährleisten, verwendet der 4D Web Server spezielle Schreibregeln für Zugriffspfade:
Ordner werden durch Schrägstrich ("/") voneinander getrennt
Der Zugriffspfad darf nicht mit einem Schrägstrich ("/") enden.
Um in der Ordnerhierarchie eine Ebene höher zu gehen, geben Sie vor dem Ordnernamen zwei Punkte ( ".." ) ein.
Der Zugriffspfad darf nicht mit einem Schrägstrich ("/") beginnen.
Soll Ihre Standard Homepage zum Beispiel lauten "MyHome.htm" und liegt sie im Ordner "Web", geben Sie "Web/MyHome.htm" ein.
Hinweis: Mit dem Befehl SET HOME PAGE können Sie für jeden Web Prozess im kontextuellen Modus eine Standard Home Page definieren.
Legen Sie keine Standard Home Page an, verhält sich der Web Server je nach Startup Modus unterschiedlich:
Startet der Web Server im nicht-kontextuellen Modus (Standardeinstellung), wird die Datenbankmethode On Web Connection aufgerufen. Sie müssen dann selbst für die Übertragung einer Startseite sorgen.
Startet der Web Server im kontextuellen Modus, wird wie in früheren Versionen von 4D die aktuelle Menüleiste gestartet, das ist standardmäßig Menüleiste 1.
Startmodus
Gibt an, ob der Web Server im kontextuellen oder nicht kontextuellen Modus gestartet wird. Weitere Informationen dazu finden Sie im Abschnitt Kontextueller Modus.
Web Prozesse erneut verwenden (nur in den Voreinstellungen von 4D Client)
Diese Option optimiert die Operation des Web Server in 4D Client. Dadurch werden Web Prozesse, die zum Verwalten früherer Web Anfragen erstellt wurden, wiederhergestellt. Der Web Server von 4D Client benötigt zum Verwalten einer Web Anfrage einen spezifischen Web Prozess; bei Bedarf meldet sich dieser Prozess an den 4D Server Rechner an, um auf die Daten und die Engine der Datenbank zuzugreifen. Er generiert dann über eigene Variablen, Auswahlen, etc. einen temporären Kontext. Dieser Prozess wird vernichtet, wenn die Anfrage abgewickelt ist.
Ist die Option Web Prozesse erneut verwenden markiert, behält 4D die spezifischen Web Prozesse auf 4D Client bei und verwendet sie für nachfolgende Anfragen. Da der Prozess nicht neu aufgebaut werden muss, hat der Web Server eine bessere Performance.
Sie müssen jedoch sicherstellen, dass dann die in 4D Methoden verwendeten Variablen systematisch initialisiert werden, damit keine unpassenden Ergebnisse geliefert werden. Ausserdem müssen Sie alle aktuellen Auswahlen bzw. Datensätze aus der vorigen Anfrage löschen.
Seite Erweitert
Cache für statische Seiten
Der 4D Web Server hat einen Cache, um angeforderte statische Seiten, GIF Bilder, JPEG Bilder (<128 kb) und Stilvorlagen (.css Dateien) in den Speicher zu laden.
Mit dem Cache steigern Sie die Leistung des Web Servers beim Senden von statischen Seiten.
Der Cache wird zwischen allen Web Prozessen aufgeteilt. Seine Größe legen Sie in den Einstellungen der Datenbank fest. Der Cache für statische Seiten ist standardmäßig nicht aktiviert. Um den Cache für statische Seiten zu aktivieren, markieren Sie die Option Benutze 4D Web Cache.
Im Bereich Seiten Cache Größe können Sie die Größe des Cache verändern. Sie richtet sich nach der Anzahl und der Größe der statischen Seiten Ihrer Web Site, sowie nach den jeweiligen Ressourcen der Host Rechner.
Hinweis: Während Sie mit Ihrer Web Datenbank arbeiten, können Sie mit dem Befehl WEB CACHE STATISTICS die Leistung des Cache prüfen. Stellen Sie zum Beispiel fest, dass die Nutzungsrate des Cache fast 100% erreicht, wissen Sie, dass Sie die zugewiesene Größe erhöhen müssen.
Auch mit den URL /4DSTATS und /4DHTMLSTATS erhalten Sie Information über den Status des Cache. Weitere Informationen dazu finden Sie im Abschnitt Information über die Web Site.
Sobald der Cache aktiviert ist, sucht der 4D Web Server nach der vom Browser angeforderten Seite zuerst im Cache. Findet er die Seite, sendet er sie sofort. Findet er sie nicht, lädt 4D die Seite von der Festplatte und legt sie in den Cache.
Ist der Cache voll und wird mehr Platz benötigt, entfernt 4D zuerst die am frühesten aufgerufenen Seiten.
Cache leeren
Sie können jederzeit Seiten und Bilder aus dem Cache entfernen, zum Beispiel, wenn Sie eine statische Seite geändert haben und diese in den Cache laden wollen. Klicken Sie dazu auf die Schaltfläche Lösche Cache. Der Cache wird sofort geleert.
Timeout Web Prozess
Hier definieren Sie das Timeout für die Web Verbindungsprozesse (nur kontextueller Modus). Weitere Informationen dazu finden Sie im Abschnitt Kontextueller Modus.
Web Prozesse
Die Option maximale Anzahl gleichzeitiger Web Prozesse gibt die max. Anzahl an, die gleichzeitig den Server öffnen kann. Sie definiert die maximale Anzahl aller Web Prozesse, d.h. kontextuell, nicht-kontextuell oder Teil des "Pools" an Prozessen. Dieser Parameter verhindert die Überlastung des 4D Web Server. Sie kann eintreten, wenn gleichzeitig eine zu große Anzahl an Anfragen gesendet wird oder zuviele Kontext-Erstellungen angefordert werden.
Standardmäßig ist der Wert 32000 vorgegeben. Sie können jede Ziffer zwischen 10 und 32000 eingeben.
Ist die maximale Anzahl der Web Prozesse (minus eins) erreicht, erstellt 4D keine weiteren Prozesse und sendet für jede neue Anfrage die Meldung "Server nicht verfügbar" (Status HTTP 503 Service Unavailable).
Passenden Wert bestimmen
In der Theorie ergibt sich die maximale Anzahl der Web Prozesse aus der Formel: Zugeteilter Arbeitsspeicher/Speichergröße des Web Prozesses (stack size)
Sie können sich aber auch die Information zu den Web Prozessen ansehen, die der Runtime Explorer anzeigt: aktuelle Anzahl der Web Prozesse und erreichtes Maximum, seit der Web Server in Betrieb ist.
Pool der Web Prozesse
Mit dem "Pool" der Web Prozesse können Sie die Reaktionszeit des Web Server im nicht-kontextuellen Modus steuern. Diese Reserve reicht vom Minimum (standardmässig 0) bis zum Maximum (standardmäßig 10) der zu recyclenden Prozesse. Sie können diese Prozesse mit dem Befehl SET DATABASE PARAMETER ändern. Wurde die maximale Anzahl der Web Prozesse verändert und ist dieser Wert kleiner als der obere Grenzwert des "Pool", wird die maximale Anzahl der Web Prozesse herabgesetzt. Sie können die maximale Anzahl der Web Prozesse auch über den Befehl SET DATABASE PARAMETER festlegen.
Dateneingabekontrollen mit Javascript (Kontextueller Modus)
Ist diese Option markiert, läßt sich ein Teil der Dateneingabekontrollen in den Browsern mit automatischen Javascripts erledigen.
Javascripts sind im Browser auf folgende Dateneingabekontrollen und Datentypen anwendbar:
Minimumwert (für numerische Werte)
Maximumwert (für numerische Werte)
Zwingende Werte (für numerische und alphanumerische Werte)
Erstellte Javascripts sind relativ klein. Sie zeigen zwar ein Fenster mit Warnungen. Der Benutzer kann jedoch weiter eine Dateneingabe bestätigen, denn das bleibt die Aufgabe von 4D.
Enthält eine Dateneingabe einen inkorrekten Wert, erscheint im Browser eine Warnung, wenn der Benutzer auf eine Schaltfläche klickt (OK, Abbrechen, etc.):
Wird die Meldung bestätigt und klickt der Benutzer ein zweites Mal auf die Schaltfläche, wird die Aktion der Schaltfläche berücksichtigt.
Die komplette Kontrolle bei der Dateneingabe wird im Web Server, im Benutzer- und Runtimemodus ausgeführt.
Abfragen protokollieren (logweb.txt)
Mit dieser Option können Sie ein Logbuch in Form einer CLF Textdatei anlegen, das die an den Web Server gesendeten Anfragen enthält. Weitere Informationen dazu finden Sie im Abschnitt Information über die Web Site.
Web Kennwörter
Hier sichern Sie den Zugriff auf die Web Site über Kennwörter. Weitere Informationen dazu finden Sie im Abschnitt Sicherheit der Verbindung.
Seite Optionen
Erweiterte ASCII Zeichen direkt senden
Der 4D Web Server konvertiert die erweiterten ASCII Zeichen in dynamischen und statischen Web Seiten standardmäßig nach den HTML Standards, bevor er diese Seiten sendet. Browser können diese Zeichen dann interpretieren.
Sie können den Web Server aber auch so einstellen, dass Zeichen des erweiterten ASCII-Satzes ohne Konvertierung in HTML Einheiten gesendet werden. Tests haben bei den meisten ausländischen Betriebssystemen eine Beschleunigung ergeben, insbesondere beim japanischen System.
Damit der 4D Web Server erweiterte ASCII Zeichen direkt senden kann, wählen Sie die Option "Sende erweiterte Zeichen direkt".
Zeichensätze
Markieren Sie die Option Standardsatz, um einen Zeichensatz für die Verwendung im 4D Web Server auszuwählen. Sie können auch eigene Zeichensätze definieren, wenn Sie die Konvertierungstabellen (Web Filter) für Eingeben und Ausgeben von Daten ändern.
Dazu markieren Sie die Option Benutzerdefiniert. Er entspricht dem Zeichensatz "x-user defined".
Die Schaltflächen Ändere Eingabefilter und Ändere Ausgabefilter sind nun aktiv. Eingabefilter interpretieren Zeichen, die der Browser an den 4D Web Server sendet, Ausgabefilter interpretieren Zeichen, die der 4D Web Server an den Browser sendet. Klicken Sie auf die entsprechende Schaltfläche.
Auf dem Bildschirm erscheint folgendes Dialogfenster:
Markieren Sie im scrollbaren Bereich die Mac Zeichen, die Sie filtern wollen.
Geben Sie im Eingabebereich "ASCII Code" den neuen ASCII Code für das Zeichen ein.
Wiederholen Sie diese Operation für alle Zeichen, die Sie filtern wollen. Klicken Sie auf die Schaltfläche Sichern, wenn Sie den Filter sichern wollen. Sie können dann über die Schaltfläche Öffnen bereits gesicherte Filter wieder verwenden.
Klicken Sie auf die Schaltfläche Benutzen, um die geänderten Eingabe- bzw. Ausgabefilter zu aktivieren.
Keep-Alive Verbindungen
Der Web Server von 4th Dimension kann keep-alive Verbindungen verwenden. So können Sie für den Austausch der Elemente zwischen Web Browser und Server eine einzige TCP Verbindung offenhalten. Das spart System-Ressourcen und optimiert die Übertragung.
Diese Option ermöglicht, das Aufrechterhalten von TCP Verbindungen für den Web Server zu aktivieren/deaktivieren. Sie ist standardmäßig aktiviert. Das ist für die meisten Fälle sinnvoll. Unterstützt der Web Browser nicht die Option keep-alive, wechselt der 4D Web Server automatisch zu HTTP/1.0.
Die Option keep-alive des Web Server von 4th Dimension gilt für alle TCP/IP Verbindungen (HTTP, HTTPS), im kontextuellen und nicht-kontextuellen Modus. Beachten Sie jedoch, dass keep-alive Verbindungen nicht immer für alle 4D Web Prozesse verwendet werden. In einigen Fällen werden andere optimierte interne Funktionen ausgelöst. Keep-alive Verbindungen sind hauptsächlich für statische Seiten sinnvoll.
Es gibt folgende Optionen:
Anzahl Anfragen pro Verbindung: Damit legen Sie die maximale Anzahl von Anfragen und Antworten fest, die keep-alive nutzen können. Diese Einschränkung verhindert, dass der Server durch eine hohe Anzahl hereinkommender Anfragen überflutet wird eine von Hackern benutzte Technik.
Standardmäßig ist der Wert 100 vorgegeben. Sie können ihn je nach den Ressourcen des Rechners, welcher den 4D Web Server hostet, erhöhen oder verringern.
Timeout: Damit legen Sie die maximale Zeitspanne (in Sekunden) fest, für die der Web Server eine TCP Verbindung ohne Anfragen vom Web Browser offenhält. Ist die Zeit abgelaufen, schließt der Server die Verbindung.
Sendet der Web Browser eine Anfrage nach Schließen der Verbindung, meldet der Server, dass die Verbindung geschlossen ist. Der Web Browser zeigt dann eine Meldung, dass die Verbindung ein Timeout hat und fordert den Benutzer auf, die Verbindung über die Schaltfläche Refresh im Web Browser erneut aufzubauen. Dann wird eine neue Verbindung gestartet.
Web Kompatibilität
Die Seite Kompatibilität unter dem Thema Anwendung in den Einstellungen der Datenbank bietet Optionen zum Anpassen der Arbeitsweise des Web Server:
Benutze 4D Var Kommentare statt Klammern
_Mit dieser Option bestimmen Sie die Syntax für 4D Variablen in statischen Seiten.
Ist sie markiert, müssen Sie die Standardsyntax von HTML verwenden: <!4DVAR MEINEVAR> (Zwischen 4DVAR und dem Variablennamen muss ein Leerzeichen stehen).
Ist diese Option nicht markiert, müssen Sie als Syntax eckige Klammern verwenden: [MEINEVAR] Dies ist kein gängiger Standard, sondern war in früheren 4D Versionen üblich.
Verwende neue Kontext-Referenzmethode
Ist diese Option markiert (Standardeinstellung), setzt der 4D Web Server im kontextuellen Modus die aktuelle Kontextnummer in der Haupt-URL der an den Browser gesendeten Dokumente. Diese Option war in früheren Versionen nicht markiert, d.h. der 4D Web Server sendete die Kontextnummer für jedes Element einer Seite an den Browser. Enthielt eine Seite z.B. zwei Absätze und ein Bild, sendete 4D die Kontextnummer dreimal. Das verlangsamt den Bearbeitungsprozess. Sie können zur Wahrung der Kompatibilität diese Option auf inaktiv setzen. Sie müssen dann Ihre Datenbank neu starten, damit die Änderungen wirksam werden.
Entferne "/" von unbekannten URL's
In bisherigen Versionen von 4th Dimension wurden unbekannte URL, also URL, die weder zu einer vorhandenen Seite noch einer speziellen 4D URL gehören, in der Datenbankmethode On Web Authentication und der Datenbankmethode On Web Connection in $1 ohne das vorangestellte Zeichen "/" zurückgegeben.
Dies wurde in 4th Dimension 2004 geändert: Jetzt starten alle in $1 gesendeten URL mit dem Zeichen "/".
Sollten Sie jedoch darauf basierende Arbeitsweisen eingerichet haben und möchten Sie das bisherige Verhalten erhalten, können Sie die Option "Entferne "/" von unbekannten URL's" markieren. Für konvertierte Datenbanken ist sie standardmäßig markiert, für neue Datenbanken standardmäßig nicht markiert.
Referenz
Kontextueller Modus, SET DATABASE PARAMETER, SET HOME PAGE, Sicherheit der Verbindung.