Create Landing Pages Project
Webseitenbetreiber erhalten regelmäßig Webseiteninhalte von Drittanbietern. Diese Inhalte sollen in den gegebenen Webbauftritt integriert werden. Das jeweilige Design und Layout der Seite soll dabei erhalten bleiben.
Die Inhalte sollen automatisch integriert werden.
Die um die neuen Inhalte erweiterten Seiten sollen als statische HTML Seiten erstellt werden.
Die Applikation muss sicherstellen, dass die Inhalte jederzeit im aktuellen Layout der jeweiligen Webseite angezeigt werden.
Die Applikation muss für verschiedene Webseitenbetreiber und deren Webseiten nutzbar sein.
Die jeweiligen Einstellungen sollen durch den Auftraggeber benutzfreundlich konfigurierbar sein.
Zur Lösung dieser Aufgabe wurde eine Applikation konzipiert, welche aus drei einzelnen Programmen besteht:
- Eine Windows Forms Applikation, mit der die Applikation verwaltet wird (Verwaltungs-Applikation).
- Ein Windows Service, welcher regelmäßig die statischen Webseiten erstellt (Create Pages Service).
- Ein Windows Service, welcher überprüft, dass die Veröffentlichung der statischen Seiten erfolgreich erfolgte (Publisher Service).
Technische Rahmenbedingungen
Der Auftrageber verwendet einen MS SQL Server zur Speicherung und Auslieferung der dynamischen Inhalte. Das Betriebssystem dieses und anderer Server ist MS Windows Server 2003.
Mitarbeiter des Auftraggebers verwenden Clients auf Basis MS Windows XP und MS Windows Vista.
Die einzelnen Webseitenbetreiber setzen unterschiedliche Webserver und Datenbankserver ein – aus diesem Grund ergab sich das zwingende Mandat, statische HTML Seiten zu erzeugen.
Da die zur Lösung der Aufgabe zu erstellenden Applikationen ausschließlich auf den Servern bzw. PCs des Auftraggebers laufen, konnten .Net basierende Applikationen erstellt werden.
Verwaltungs-Applikation
Die Verwaltungs-Applikation erlaubt die Einstellung diverser Parameter, die für die Erzeugung statischer HTML Dateien nötig sind. Alle Einstellungen werden in einer MS SQL Datenbank des Auftraggebers gespeichert. Die nach gelagerten Services verwenden anschließend diese Einstellungen.
Hierzu wird die gegebene Webseite des Betreibers anhand angegebener Kriterien analysiert und in zwei Bereiche zergliedert. Header- und Footerseite bestimmen den grafischen Rahmen der zu erzeugenden HTML Datei. In diesen Rahmen werden die dynamischen Inhalte eingefügt.
Idealerweise bietet der Quellcode der Webseite Kommentare anhand derer die Bereiche definiert werden können. Alternativ können die Bereiche anhand HTML Tags ermittelt werden.
|
Die Applikation kann direkt auf einem Server verwendet werden oder auf den PCs der verantwortlichen Mitarbeiter.
Einstellungen werden jeweils separat für jeden Webseitenbetreiber erstellt und verwaltet. Der gültige Betreiber (Company) wird aus einer Liste ausgewählt.
Weiterhin erstellt diese Applikation den grafischen Rahmen der zu erzeugenden HTML Seiten. |
|
Im Bereich Properties & Actions kann bestimmt werden, dass für diesen Webseitenbetreiber keine statischen HTML Seiten erzeugt werden sollen, indem dieser Betreiber als deaktiviert gesetzt wird.
Weiterhin kann angegeben werden, ältere statische HTML Seiten erneut zu erstellen. Dies ist interessant, im Fall das Design des Webseitenbetreibers wurde geändert.
Bei Erstellung der HTML Seite wird automatisch aus dem Inhalt die Meta Description gebildet und auf Wunsch auf maximal 250 oder mehr/weniger Zeichen begrenzt. Diese Einstellung ist für Suchmaschinenoptimierung relevant.
Die erzeugten HTML Dateien können vom Create Pages Service automatisch per FTP auf den Zielserver geladen werden. Alternativ werden die Dateien auf dem Server des Auftraggebers gespeichert und mit anderen Applikationen auf die Server der Webseitenbetreiber geladen.
|
|
Die FTP Optionen erlauben die Angabe der benötigten FTP Einstellungen.
Einige Webseitenbetreiber verwenden eine so genannte Indikator Datei, um festzustellen, dass neue Dateien aufgespielt wurden. Dies ist häufig dann der Fall, wenn die Daten anschließend seitens des Betreibers auf den eigentlichen Webserver bewegt werden. |
Mittels Javascript können die statischen HTML Seiten Aufgaben lösen, die ansonsten mittels statischer HTML Seiten nicht umzusetzen sind (z.B. Anpassen von Links).
|
In den Javascript Einstellungen können Javascript Dateien oder Code Snippets eingebunden werden. Die Möglichkeiten, Javascript Code einzubinden, stellen dabei immer sicher, dass existierende Javascripte nicht gestört werden.
Die sicherste Methode ist das Einbinden einer externen Javascript Datei, welche ihren Code über einen Event mittels Event Monitoring startet (gewöhnlich der onload Event). |
|
Es werden jedoch auch die klassischen Methoden, Anpassung des Body Tags oder Einfügen eines Script Tags, unterstützt. Bei Verwendung des Body Tags werden bis dato über diese Methode gestartete Scripte weiterhin geladen.
Die Verwendung eines Code Snippets erlaubt die flexibelste Einstellung – hier wird der zur Verfügung gestellte Code eingebunden.
Der Publisher Service veröffentlicht die erstellt HTML Seite.
Hierzu wird eine Webseite des Auftraggebers gestartet, welche alle hierfür nötigen Aktionen vornimmt. Die hierfür benötigten Parameter werden im Abschnitt Publisher konfiguriert.
Mit Option Save werden alle Einstellungen gespeichert und die Header- und Footerseiten, so dies angegeben wurde, erzeugt.
Create Pages Service
Der Create Pages Service ist eine Windows Service Applikation, welche in regelmäßigen Abständen statische Webseiten erstellt und – falls für diesen Webseitenbetreiber so hinterlegt – per FTP auf dessen Server lädt.
Die in der Verwaltungs-Applikation angegebenen Einstellungen werden von diesem Service verwendet. Hierzu wird der MS SQL Server des Auftraggebers ausgelesen.
|
|
Der Service selbst kann über seine Konfigurationsdatei (app.config ) angepasst werden.
So kann u.a. angegeben werden, welche älteren, schon erstellten HTML Dateien, erneut erstellt werden sollen. Hierzu wird im Abschnitt "RefreshOlderFilesMonthsBack" der Konfigurationsdatei die Anzahl der Monate bestimmt.
Eine weitere Option betrifft das Interval, in dem der Service läuft ("ServiceIntervalinSeconds"). Dies ist standardmäßig alle 10 Minuten. |
Die Aktivitäten des Services werden im Windows Ereignisprotokoll gespeichert. Hierüber kann nachvollzogen werden, welche Aktionen wann erfolgreich oder nicht stattgefunden haben.
Publisher Service
Der Publisher Service ruft regelmäßig einen Dienst des Auftraggebers auf, welcher alle benötigten Einstellungen vornimmt, die für die Veröffentlichung der statischen HTML Seiten und deren Verwaltung nötig sind.
Dieser Service kann ebenfalls über seine Konfigurationsdatei angepasst werden.
Setup
Alle Applikationen können bequem durch das jeweilige Setupprogramm installiert werden.
Das Setpprogramm stellt weiterhin sicher, dass der Database Connection String der Konfigurationsdatei verschlüsselt wird.
Typische Verwendung der Applikation
Mitarbeiter des Auftraggebers konfigurieren regelmäßig die Webseiten der Webseitenbetreiber unter Verwendung der Verwaltungs-Applikation.
Anschließend erledigen die Services die eigentliche Arbeit.
Stichprobenmäßig werden die Ereignisprotokolle auf eventuelle Fehler geprüft.
Regelmäßig werden die Mitarbeiter des Auftragsgebers ermuntert, diese Kontrollen vorzunehmen, da die Services keine Fehler berichten mussten und demzufolge die Motivation zur Kontrolle im Zeitablauf abnimmt.