| In jedem größeren Web und in allen Paketen von Web-Programmen wird moderne IT-Technologie eingesetzt. Professionelle Provider bieten dazu alle Resourcen. | Die Entwicklung eines komplexen Webs auf einem entfernten Server ist sehr aufwändig, langsam und teuer. Deshalb richtet man am eigenen Server eine möglichst ähnlich reagierende Entwicklungs-Umgebung ein. Diese Seite zeigt dazu einige Beispiele. |
Server
|
Webserver (Apache), Fileserver (Samba) |
| Voraussetzungen und Ziele | Einfache Varianten, Provider-Mirror |
| User | Anlegen eines passenden Linux-Users |
| Datei-System | Anlegen des Webspace |
| Apache Webserver | Ergänzung der Apache - Konfiguration |
| Samba Fileserver | Ergänzung der Samba - Konfiguration |
| FTP Server | Upload der Web-Dateien |
| MySQL Server | Ergänzung des Datanbank-Servers |
| Verwandte Themen | LAMP-Server (WAMP-Server), Apache Webserver, Samba Fileserver, pureFTP Server, MySQL Datenbank Server |
Voraussetzungen, Zielsetzung |
|
| Wer ein eigenes Web im Internet betreibt und dazu die Dienstleistung eines Web-Providers beansprucht, möchte eigene Webseiten herstellen, testen und zur weltweiten Verwendung auf den Webserver des Providers laden. |
Zur Einrichtung einer bequemen Entwicklungs-Umgebung sind viele Varianten möglich. Einige Beispiele werden hier vorgestellt. |
Online Web-Editor
Wenn sie ihre ersten Webseiten erstellen, dann ist ein rascher Erfolg das
vorläufig einzige Ziel.
Einige FreeWeb-Provider bieten Live Online-Editoren an. Das sind Werkzeug (tool)-Webseiten
zur Herstellung eigener Webseiten.Voraussetzung:
Ein Browser-Programm auf einem PC mit Internet-Zugang, Anmeldung bei einem Web-Provider,
der ein derartiges Service anbietet.
|
Diese Variante eignet sich zur Herstellung einer einfachen Startseite ("Homepage"). Sie ist langsam, aufwändig und ermöglicht keinen Test am eigenen PC. Sinnvoll - wenn überhaupt - nur für ihre allererste Webseite. ♣ Tipp: Halten sie die erzeugte Webseite so einfach wie möglich. |
Web-Editor
Wenn sie mehrere eigene Webseiten erstellen wollen, dann brauchen sie dazu ein
WebEditor-Programm.
Solche Programme gibt es kommerziell oder als Freeware für alle Betriebssysteme.Arbeitsweise:
Sie erzeugen und testen Webseiten am eigenen PC, und kopieren fertige Seiten per Upload
auf den Webserver ihres Web-Providers.Web-Verzeichnis
►
Legen sie ein eigenes Verzeichnis (Ordner) für alle im Web verwendeten Dateien an,
z.B. (Linux, Windows):
/home/ich/web
♣
Tipp: Verwenden sie für ihre Webseiten nur Dokumente aus diesem
Verzeichnis (oder einem Unter-Verzeichnis). Wenn sie z.B. ein Bild einsetzen,
dann kopieren sie dieses Bild vorher in ihr Web-Verzeichnis.C:\web ♣ Tipp: Geben sie vor jeder anderen Arbeit ihrem Web-Editor den Pfad zu ihrem Web-Verzeichnis bekannt. Verwenden sie dazu Menü-Befehle wie z.B. (Neues) Web anlegen, Web-Site anlegen. Erst danach kann ihr Web-Editor Links und Bilder in ihren Webseiten korrekt verwalten ! |
Start-Seite
Erzeugen sie eine Start-Webseite. Ihr Web-Provider verlangt dafür einen genau
festgelegten Datei-Namen. Wenn sie den Datei-Namen nicht kennen oder nicht finden,
dann versuchen sie
index.html, index.htm, start.htm, z.B.
/home/ich/web/index.html
♣
Tipp: Alle anderen Datei-Namen sind (in Grenzen) frei wählbar, einzig der Name
der Start-Datei ist vom Provider festgelegt.C:\web\index.htm ♣ Tipp: Verwenden sie für alle Verzeichnisse und Ordner ihres Webs web-sichere Namen: • Die Namen enthalten nur kleine Buchstaben, Ziffern und das Underline-Zeichen. • Die Namen enthalten keine großen Buchstaben, Umlaute, Sonderzeichen, Leerzeichen, ... • Die Namen beginnen mit einem kleinen Buchstaben. Test
Öffnen sie die selbst erzeugte Startseite index.html durch
Doppelklick oder mit Befehl eines Browsers.Upload
Nach erfolgreichem Test ist die Webseite bereit zum Upload ↓
|
UploadJede selbst erzeugte Webseite wird zuerst am eigenen PC getestet. Wenn die Seite im Test korrekt angezeigt wird, und alle darin evtl. enthaltenen Links funktionieren, können sie die Datei auf den Webserver ihres Providers kopieren (Upload).Werkzeug-Webseiten
Freeweb-Provider bieten meist eigene Werkzeug-Webseiten für den Upload an.
Suchen sie nach Stichworten wie Tools, Management, Filemanager, Upload, ...♣ Achten sie beim Upload darauf, dass am Server des Providers eine genaue Kopie ihres Web-Verzeichnisses entsteht: Die Namen aller Dateien müssen genau gleich lauten. Wenn sie Unter-Verzeichnisse verwenden, dann müssen deren Namen und Pfade ebenfalls genau gleich lauten wie im Original auf ihrem PC. Online-Test
Nach jedem Upload folgt der Live-Test. Ihre Browser Adress-Zeile muss dazu
mit http:// beginnen, z.B.
http://www.provider.com/meinweb
(ersetzen sie meinweb durch ihren Web-Namen bei diesem Provider).Wenn die Startseite angezeigt wird, dann nehmen sie die Adresse in die Liste ihrer Favoriten (Bookmarks) auf. |
FTP
Professionelle Provider bieten zum Upload FTP (File Transfer Protocol) an.
Dazu brauchen sie ein FTP Client-Programm (kommerziell oder Freeware).• Starten sie das FTP-Programm und suchen sie eine Möglichkeit zum Einstellen der Konfiguration für ihr Web (Site), Stichwort Site Manager. • Tragen sie die Zugangs-Daten (FTP-Adresse, Name, Passwort) ein, so wie von ihrem Provider angegeben und stellen sie die Verbindung her (Connect). • Jedes FTP-Programm zeigt 2 Haupt-Fenster an: Ihr Verzeichnis am entfernten Provider-Server und ein Verzeichnis an ihrem lokalen PC. Stellen sie die Fenster sinnvoll ein, sodass man in beiden Fenstern genau äquivalente Inhalte sieht. • Dateien und Verzeichnisse werden kopiert, indem man sie doppel-klickt oder markiert und Befehle (Upload) erteilt. Tipp: Kopieren sie immer nur vom eigenen PC zum Provider, nicht umgekehrt. Web-Editor:
Professionelle Web-Editor Programme bieten eingebaute FTP-Funktionen. Auch in diesem Fall
werden die FTP Anmelde-Daten einmalig eingetragen. Danach werden geänderte
oder neu erstellte Webseiten automatisch oder auf Befehl per FTP auf den Server ihres
Providers kopiert.♣ Beachten sie bei jeder automatisch durchgeführten Synchronisation die genaue Zeit-Einstellung ↓ ihres PC ! |
Webserver
Für höhere Ansprüche wird ein eigener Webserver eingerichtet.
Dazu wird nach Möglichkeit ein eigenen Server-PC verwendet (ältere Modelle
genügen völlig) und im lokalen Netzwerk verbunden.Notfalls kann man die gesamte Server-Software (kostenlos) auch am eigenen Arbeits-PC installieren. ♦ Details zur Installation des Apache Webservers auf Linux oder Windows |
Ein eigener Webserver bietet weit mehr als nur realistische Test-Bedingungen: Ihr Webserver verwaltet die gesamte im eigenen Netzwerk benötigte Information (auf Webseiten). Sie können nicht nur statische Webseiten verwenden sondern auch Script-Programme (Perl, PHP, Python,...) und damit auch umfangreiche Programm-Pakete installieren (z.B. Wiki, Content Management (CMS), Groupware, Projektverwaltung, Terminverwaltung, ...) |
Mirror-Web
Für gehobene und professionelle Ansprüche wird ein eigener
Entwicklungs-Server eingerichtet.
Der Server kann unabhängig von diesem Einsatz auch andere (Routine)-Aufgaben
übernehmen. Auf einem Standard LAMP Server
(Linux +
Apache +
MySQL +
Samba...) kann man mehrere
Entwicklungs-Webs einrichten. Jedes davon kann einzeln so konfiguriert werden, dass die
Bedingungen des jeweiligen Web-Providers so genau wie möglich simuliert werden.Das ermöglicht bequeme Entwicklung und realistische Test-Bedingungen, insbesondere für komplexe Webs. Voraussetzung am eigenen Server-PC:
Ein Standard LAMP Server ist
auf einem PC ihres lokalen Netzwerks eingerichtet.♦ Details zum Thema LAMP-Server (Jede professionelle Linux-Distribution enthält alle LAMP-Konponenten). ♦ Alternative: Im Internet werden komplett eingerichtete und konfigurierte LAMP-Server als Virtuelle PC (appliances) angeboten. Das erfordert ein erhebliches Download-Volumen (2..4 GB), läuft jedoch sofort und erspart die für AnfängerInnen umständliche Installation und Konfiguration aller Komponenten. • Die Installation auf Windows (WAMP) ist prinzipiell möglich. Der Aufwand ist allerdings bedeutend größer, da alle Komponenten installiert werden müssen. Im Ergebnis lässt sich diese Lösung niemals so gut an die Provider-Bedngungen anpassen wie ein Linux-System. |
Voraussetzung beim Provider
Die beschriebene Variante ist nur für professionelle Provider sinnvoll. Typische Details:• Sie verfügen über eine eigene Domain • Ihr Provider bietet FTP-Zugang • Ihr Provider bietet Script-Ünterstützung (Perl, PHP, ...) • Datenbank-Unterstützung (MySQL) ist für die meisten größeren Pakete von Web-Programmen notwendig. Alle weiteren Kapitel dieser Seite demonstrieren ein Beispiel für eine derartige Konfiguration: ► Anmeldung als User root (Voraussetzung für Administrator-Arbeiten).) ► Einrichtung eines Linux-Users ► Einrichtung des Webs im Dateisystem ► Konfiguration des Apache Webservers ► Konfiguration des Samba Fileservers ► Konfiguratioin des FTP-Servers ► Konfiguratioin des MySQL Datenbank-Servers |
Dateisystem |
|
home-VerzeichnisWenn der User ↑ korrekt angelegt wurde, dann sollte für diesen User bereits ein home-Verzeichnis existieren, z.B./home/mydom.com
Dieses Verzeichnis wird dem Verzeichnis am Provider-Server möglichst genau nachgebaut.
|
Wenn sie mit FTP zum Provider verbinden, dann wird im entfernten Verzeichnis das genau korrespondierende Verzeichnis am Provider-Server angezeigt. So erfahren sie, welche Dateien und Verzeichnisse sich darin befinden. |
Simulation des Provider-DateisystemsIm home-Verzeichnis befinden sich meist die beiden Sub-Verzeichnisse cgi-bin und ein Web-Verzeichnis, z.B. www oder htdocs► Erstellen sie Verzeichnisse mit genau gleichen Namen und löschen sie Verzeichnisse und Dateien, die im Provider-Verzeichnis nicht enthalten sind - Mit Ausnahme von Dateien, deren Name mit einem . Punkt beginnt (werden für interne Zwecke verwendet). |
# cd /home/mydom.com
# ls cgi-bin www Erstellen sie im Web-Verzeichnis eine Minimal-Webseite, z.B. /home/mydom.com/www/index.html
Die Zugriffsrechte werden sinnvoll eingestellt, z.B. mindestens mit Lese- und Schreib-Zugriff für den User mydom.com |
TestMelden sie sich mit dem Namen des Users an ihrem eigenen Server-PC an, z.B. mit
Name = mydom.com
Passwort = geheim Ergebnis: Sie sollten sich in ihrem home-Verzeichnis befinden. Versuchen sie, eine neue Datei anzulegen und sie danach wieder zu löschen - das sollte möglich sein. |
SSHDer gleiche Test sollte von jedem anderen PC im LAN möglich sein, mindestens jedoch von ihrem Arbeits-PC.Dazu verbinden sie sich mit SSH (Secure shell) mit ihrem Server. Auf Windows verwenden sie z.B. das ausgezeichnete Freeware-Programm putty |
Apache Webserver |
|
|
Ihr Apache Webserver sollte bereits funktionsfähig eingerichtet und getestet sein. Die laufende Standard-Konfiguration wird nicht geändert, sondern ergänzt. |
Der Server verwendet für Webseiten und CGI-Programme meist diese Verzeichnisse:
/srv/www/htdocs
/srv/www/cgi-bin |
Verzeichnis für eigene KonfigurationDie Konfiguration des Webservers ist in einer oder mehreren Text-Dateien in diesem Verzeichnis festgelegt:/etc/apache2
•
Die Original Konfigurations-Dateien werden so wenig wie möglich geändert,
am besten gar nicht. (Das bewährt sich spätestens beim nächsten Update).• Alle eigenen Änderungen und Ergänzungen sollten sich in einem getrennten Verzeichnis befinden, z.B. in /etc/apache2/my_conf
In der Standard-Konfiguration wird lediglich der Pfad zu diesem Verzeichnis eingetragen.
Auf SuSE Linux tragen sie das Verzeichnis der eigenen Konfigurations-Dateien in diese
Text-Datei ein:
/etc/sysconfig/apache2
Diese Datei steuert die automatische Erzeugung (!) der Apache Konfigurations Dateien.
Sie ist gut dokumentiert.Typische Eintragung:
APACHE_CONF_INCLUDE_DIRS = "/etc/apache2/my_conf/*.conf"
|
► Wenn die Apache Konfiguration nicht automatisch sondern manuell eingestellt wird, dann wird eine äquivalente Anweisung in die Standard Konfiguratiions-Datei eingetragen: /etc/apache2/httpd.conf
► Erzeugen sie eine Sicherungs-Kopie dieser Datei, öffnen sie die Text-Datei mit einem Editor und fügen sie am Ende diese Zeile an: Include /etc/apache2/my_conf/*.conf
► Bei korrekter Einstellung werden alle Dateien *.conf, die sich im angegebenen Verzeichnis befinden, bei der Apache Konfiguration berücksichtigt. Zur besseren Übersicht wird in jede dieser Dateien nur eine zusammengehörende Gruppe von Anweisungen eingetragen. Mit dem nächsten Apache Restart wird diese Konfiguration angewendet: # /etc/init.d/apache2 restart
|
Konfigurations-DateiErzeugen sie in ihrem Verzeichnis für eigene Apache Konfiguration ↑ eine Text-Datei zur Konfiguration des hier vorgestellten Webs, z.B./etc/apache2/my_conf/mydom.conf
ScriptAlias
Damit wird jenes Alias definiert, welches sie später in der Browser-Adresszeile
für CGI-Programme verwenden können wie
http://myserver/mydom.com/cgi-bin/test.pl
Das CGI-Verzeichnis ist normalerweise getrennt von allen übrigen Webseiten angelegt.
Im nachfolgenden <Directory>-Block wird dieses Verzeichnis
konfiguriert.♦ Details dazu finden sie im Apache-Manual ihres eigenen Webservers: http://myserver/manual
Im Beispiel wurde der Zugang auf die Mitglieder des eigenen LAN eingeschränkt
(Allow). Das gilt nur für den Test und wird vom Provider
natürlich nicht verwendet.♦ Details zu IP-Adressen und Masken Alias
Damit wird jenes Alias definiert, welche sie später in der Browser-Adresszeile
für alle gewöhnlichen Webseiten verwenden, z.B.
http://myserver/mydom.com/index.html
Tipp: Dieses Alias wird erst nach dem ScriptAlias definiert,
da es mit den gleichen Zeichen beginnt. Es wird nur für jene Anfragen verwendet,
für welche das vorher geprüfte ScriptAlias nicht zutrifft.
|
Inhalt der Text-Datei mydom.conf (Beispiel):
# Konfiguration von mydom.com
ScriptAlias /mydom.com/cgi-bin /home/mydom.com/cgi-bin <Directory /home/mydom.com/cgi-bin>
Options +ExecCGI -Includes
</Directory>Order deny,allow Deny from All Allow from 192.168.0.0/24 Alias /mydom.com /home/mydom.com/www <Directory /home/mydom.com/www>
Order deny,allow
</Directory>
Deny from All Allow from 192.168.0.0/24 AllowOverride All |
Webseiten-TestNach Konfiguration und Apache Restart wird getestet, ob der Server eine gewöhnliche statische Webseite korrekt anzeigt.Dazu wird eine HTML-Datei im Web-Verzeichnis angelegt, z.B. /home/mydom.com/www/index.html
Tragen sie diese Adresse am Browser eines beliebigen PC ihres Netrzwerks ein:
http://myserver/mydom.com
Ersetzen sie myserver durch Name oder IP-Adresse ihres
Webservers und mydom.com durch den Namen ihrer Domäne.
http://myserver/mydom.com/index.html |
Beispiel für die Text-Datei index.html
<html>
<head>
</html>
<title>mydom.com</title>
</head><body> <h1>Hier ist mydom.com !</h1>
</body>
|
Virtueller ServerIhr eigener Webserver lässt sich als Virtueller Server so einrichten, dass er ihr Web mit dieser Adresse anzeigt:http://www.mydom.com
|
In diesem Fall können sie allerdings nur mehr schwer zwischen ihrem eigenen Test-Server und dem echten Internet-Server ihres Providers unterscheiden. Daher wird diese Variante hier nicht vorgestellt. |
CGI-TestWenn die Anzeige statischer Webseiten funktioniert, wird die Funktion von CGI-Programmen überpfüft.Dazu wird eine Text-Datei im CGI-Verzeichnis angelegt, z.B. /home/mydom.com/cgi-bin/test.pl
Tragen sie diese Adresse am Browser eines beliebigen PC ihres Netrzwerks ein:
http://myserver/mydom.com/cgi-bin/test.pl
Ersetzen sie myserver/mydom.com sinngemäß.
|
Beispiel für die Text-Datei test.pl
#!/usr/bin/perl
use POSIX; print "Content-Type: text/html\n\n"; print "<html>\n"; print "<h1>Perl-CGI</h1>\n"; $dt=strftime("%H:%M:%S",localtime(time()); print "$dt\n"; print "</html>\n"; |
Samba Fileserver |
|
|
Ein Samba Fileserver ermöglicht
von allen Windows-PC (des lokalen Netzwerks) den Zugang zu ausgewählten Verzeichnissen
des Linux-Servers. Der Samba Server ist in allen professionellen Linux Distributionen enthalten und kann kostenlos aus dem Internet geladen werden. • Voraussetzung für das hier vorgestellte Beispiel: Ein Samba-Server ist installiert, konfiguriert und getestet. |
Es ist praktisch, mehrere unterschiedlich konfigurierte "Shares" für
verschiedene Zwecke einzurichten. Jedes Share kann von einem dazu berechtigten Windows-User als "Netzlaufwerk" wie ein Volume (Festplatte) des eigenen PC verwendet werden. ♦ Details zum Samba-Server |
|
Zur Entwicklung eines Webs wird das betreffende Web-Verzeichnis des Servers als
Share eingerichtet. Dafür sind verschiedene Varianten möglich. |
Es ist etwas schwieriger, nachvollziehbare Beispiele für Samba anzugeben.
Die Funktion hängt stark davon ab, wie der Abschnitt [global]
ihrer Konfiguration eingestellt ist. Konsultieren sie im Zweifel das ausführliche Manual oder studieren sie eines der Konfigurations-Beispiele. |
Konfigurations-DateiDie Konfiguration ist in dieser Datei festgelegt:/etc/samba/smb.conf
•
Kontrollieren sie zunächst genau die Anweisungen des Abschnitts
[global], die auf alle folgenden Shares angewendet werden.• In allen nachfolgenden Shares werden nur jene Anweisungen eingetragen, die sich von der globalen Konfiguration unterscheiden. Das Beispiel rechts zeigt eine Konfiguration für ein Share mit dem Namen mydom.com Das Share wird ausschließlich für den gleichnamigen User mydom.com freigegeben, der sich von einem PC des eigenen LAN anmelden muss. Diese Variante ist für zahlreiche User-Webs etwas umständlich, jedoch einfach zu durchschauen und individuell zu konfigurieren. |
Ausschnitt der Text-Datei smb.conf
[domain_com]
Dieser Text wird am Ende der Datei angefügt.
path = /home/domain.com
valid users = domain.com hosts allow = 127.0.0.1 192.168.0.0/24 hosts deny = 0.0.0.0/0 inherit acls = Yes writeable = Yes read only = No |
home-VerzeichnisEin Share kann entweder ausdrücklich eingerichtet (Beispiel ↑ oben) oder automatisch konfiguriert werden (rechts → ).• Beispiel: Samba erhält eine Anforderung für ein nicht konfiguriertes Share erhält, z.B. diese Windows-Anforderung im UNC-Format: \\MyServer\mydom.com
•
In diesem Fall prüft Samba, ob es einen
User ↑ mit dem angeforderten Share-Namen mydom.com gibt.• Wenn ja, wird das Passwort geprüft und bei Erfolg das Share im home-Verzeichnis des Users eingerichtet. • Diese Variante funktioniert für beliebig viele User. Allerdings sollten alle vom System automatisch angelegten (System)-User davon ausgenommen werden. |
Ausschnitt der Text-Datei smb.conf
[homes]
Comment = Home Directories
valid users = %S,%D%w%S browseable = No read only = No inherit acls = Yes Die Wirkung ist sinngemäß gleich wie im Einzel-Beispiel ↑ oben, wird jedoch auf alle eingetragenen Linux-User angewendet. |
Windows-PasswortDamit eine der vorgestellten Varianten funktioniert, muss für jeden User sein Windows-Passwort eingerichtet werden. Dazu wird das Programm smbpasswd verwendet, welches in jeder Samba-Installation enthalten ist. |
Linux Shell-Konsole:
# smbpasswd -a mydom.com
Die Wirkung kann in dieser Datei kontrollieren:
New SMB password: geheim Retype password: geheim /etc/samba/smbpasswd
Hier sind die Samba-User (mit dem Einweg-codiertem Passwort) eingetragen.
|
Windows NetzlaufwerkNach Einrichtung des Shares kann das Web-Verzeichnis von jedem berechtigten Windows-User verwendet werden:• Arbeitsplatz öffnen • Menü • : Wählen sie einen freien Laufwerks-Buchstaben • : Suchen sie im Netzwerk oder geben sie manuell ein, z.B. \\MyServer\mydom.com
•
Das Anmelde-Fenster verlangt Name und Passwort.• Für dauerhafte Verwendung markieren sie das Kästchen und geben den Anmelde-Namen an, der sich zumindest in diesem Fall vom Windows User-Namen unterscheidet. |
• Der Zugang ist an Name und Passwort gebunden und nach Bedarf zusätzlich auf bestimmte PC (festgelegt durch seine IP-Adresse) beschränkt. • Nach Anmeldung steht das Verzeichnis wie eine zusätzliche Festplatte zur Verfügung. Ihr Inhalt sollte genauso aussehen wie ihr Verzeichnis am entfernten Server des Web-Providers. • Der Web-Editor wird so eingerichtet, dass er für dieses Web das Netzlaufwerk verwendet. Das vereinfacht und beschleunigt die Web-Entwicklung. |
FTP Server |
|
|
Jeder professionelle Provider bietet die Möglichkeit des FTP-Zugangs.
Mit FTP (File Transfer Protocol) erfolgt normalerweise der Upload aller Dateien vom
eigenen PC oder Server auf den Server des Web-Providers. ♣ Tipp: Legen sie vor jeder größeren Änderung ihres Webs eine Sicherungs-Kopie an. Wenn sie bei einer Änderung mit dem Web-Editor Fehler machen und diese einmal per FTP auch am Provider-Server installiert sind, dann ist ihr Web evtl. defekt und sie haben keine Möglichkeit, es rasch wieder auf den alten Stand zu bringen ! Professionelle Linux-Distributionen enthalten selbstverständlich auch einen FTP-Server. Das trifft auf ältere SuSE-Versionen zu, leider nicht auf neuere (Dort ist nur ein wenig brauchbarer TFTP-Server enthalten). Eine empfehlenswerte Alternative ist die Installation eines purefTP-Servers. |
Gute FTP Client-Software bietet Möglichkeiten zur Anwendung von Regeln.
Meist sind die wichtigsten Regeln bereits vor-programmiert, z.B. ● Kopiere alle Verzeichnisse und Dateien vom lokalen PC auf den entfernten Server, die dort nicht vorkommen. ● Lösche alle Verzeichnisse und Dateien vom entfernten Server, die am eigenen PC nicht (mehr) vorkommen. ● Ersetze alle Dateien des entfernten Servers, deren Änderungs-Datum um mehr als 3 Stunden älter ist als jenes am eigenen Server. ► Diese oder ähnliche Regeln werden auf Mausklick angewendet und erlauben die automatische Synchronisation des entfernten Web-Verzeichnisses in kurzer Zeit. |
Zeit♣ Synchroniseren sie unbedingt die Zeit ihres eigenen Servers und mit dieser die Zeit aller PC im LAN. Eine Genauigkeit von <=10 Sekunden ist sinnvoll und mit geringem Aufwand erreichbar.♣ Verwenden sie die Zeit bei jeder Art der Synchronisation mit Vorsicht ! Man kann FTP Upload Regeln an die Zeit der letzten Änderung einer Datei binden. Testen sie das Verhalten solcher Regeln an harmlosen Beispielen ! Ansonsten wird evtl. eine gerade erst geänderte Datei des eigenen Servers ungewollt durch eine ältere vom entfernten Provider-Server ersetzt. ♦ Details zur Zeit-Synchronisation mit NTP (Linux, Windows) |
• Zur Synchronisation wird normalerweise die weltweit eindeutige Weltzeit UTC (früher GMT) eingesetzt. Wenn ihre FTP-Software für einen der beiden Server (unbemerkt) Lokalzeit verwendet, dann ergibt das in Mitteleuropa Zeit-Differenzen von 1-2 Stunden. • Bei gerade erst geänderten Dateien kann sich eine ungenau eingestellte Systemzeit (einige Minuten Abweichung) so auswirken, dass die Synchronisation in die falsche Richtung oder gar nicht erfolgt. |
MySQL Datenbank Server |
|
|
Professionelle Web-Provider bieten meist auch die Verwendung eines Datenbank Servers an,
in der Regel einen MySQL Server. Viele interessante Pakete von (meist kostenlosen) Web-Programmen verwenden MySQL Server. |
MySQL ist der Standard SQL Server für kleinere und mittlere PC-Systeme.
Die Software ist zwar kommerziell, aber (derzeit noch) in einer kostenlosen Variante für
alle gängigen Betriebssysteme erhältlich. ♦ Details zu MySQL auf Linux oder Windows Sie sollten bereits über einige Erfahrung mit einem eigenen MySQL Server verfügen, damit sie Datenbank und Tabellen so wie gewünscht anlegen und konfigurieren können. |
MySQL, Perl, PHPWenn sie in ihrem Web eine Datenbank einsetzen, dann ist die Entwicklung praktisch nur mit einem parallel installierten System am eigenen Server möglich.Der Zugriff auf die Datenbank erfolgt mit dynamischen Webseiten, die meist mit Perl, PHP oder Python programmiert sind. |
Die Voraussetzung für dieses Kapitel ist daher Installation, Konfiguration und
erfolgreicher Test eines MySQL Servers am eigenen Server-PC. Eine weitere Voraussetzung ist die erfolgreiche Installation und Verwendung zumindest einer für den Datenbank-Zugriff geeigneten Programmiersprache. ♦ PHP benötigt zumindest eines der Module mysql, mysqli sowohl am eigenen server als auch am server des Providers. ♦ Perl benötigt die Module DBI, DBD-mysql |
WerkzeugAm Server ihres Providers können sie nur wenig SQL-Werkzeug anwenden. Das Verwaltungs-Werkzeug ist entweder am entfernten Server installiert (und freigegeben) oder muss vom eigenen PC über das Internet funktionieren. |
Im einfachsten Fall ist bei ihrem Provider phpMyAdmin ↓ installiert. Wenn der Provider es zulässt, dann lassen sich alle Werkzeuge verwenden, die einen entfernten MySQL Server über Name oder IP-Adresse und Port (normalerweise 3306) erreichen können. Im schlimmsten Fall können sie eigene Werkzeuge mit Perl oder PHP programmieren, aber das ist nur eine Notlösung. |
phpMyAdminist das Standard-Programm zur Verwaltung eines oder mehrerer MySQL Server.♦ phpMyAdmin ist kostenlos im Internet erhältlich. Es gibt nur jeweils eine aktuelle Version für alle Betriebssysteme, da PHP-Programme vom Betriebssystem unabhängig sind. |
Voraussetzung für die Verwendung von phpMyAdmin ist eine funktionsfähige Installation von PHP. Professionelle Web-Provider bieten eine fix installierte Version von phpMyAdmin zur Verwaltung des entfernten MySQL Servers an. In diesem Fall sollten sie unbedingt phpMyAdmin am eigenen Server installieren. Allerdings ist die Verwendung in jedem Fall sinnvoll, weil phpMyAdmin die Verwaltung des servers sehr einfach macht. |
MySQL DatenbankEntnehmen sie den Angaben ihres Providers den Namen ihrer Datenbank. Meist lautet der Name ähnlich oder gleich wie die Web-Domäne, z.B. domain_comGenau die gleiche Datenbank wird auch auf ihrem eigenen Server angelegt. |
Öffnen sie phpMyAdmin, klicken sie Neue Datenbank anlegen Der Name muss genau dem Namen ihrer Datenbank am entfernten Server des Providers entsprechen. Legen sie in der Datenbank eine einfache Tabelle test an und tragen sie ein paar Text-daten ein. Das ist sinnvoll, damit sie Verwaltung und Anwendung an einem möglichst einfachen Beispiel testen können. |
MySQL Administration UserEntnehmen sie den Angaben ihres Providers Name und Passwort zur Verwendung seines MySQL Servers.Genau der gleiche User wird auch auf ihrem eigenen Server angelegt. Zum Anlegen des Passworts benötigen sie die Version des MySQL-Servers oder die Information, ob sie das (neue) PHP-Modul mysqli verwenden können. Die meisten Provider verwenden konservative Einstellungen, daher im Zweifel nur die 'alte' Passwort-Version. Das Beispiel rechts wird am eigenen MySQL Server angewendet. Das Ziel ist die Einrichtung einer Datenbank, die genau wie gleich wie ihre Datenbank am Server des Providers funktioniert. |
Öffnen sie phpMyAdmin, wählen sie Datenbank mysql
und Tabelle user Legen sie einen neuen Datensatz an: • Feld Host: Tragen sie Wert=localhost ein, das passt für einen am gleichen Server-PC laufenden Webserver. Für Zugriff von anderen PC ihres LAN tragen sie ein Wert=192.168.0.* oder ähnlich je nach Basis-Adresse ihres LAN. • Feld User: Tragen sie den vorgegebenen User-Namen ein, z.B. Wert=domain_com • Feld Password: Für alte MySQL-Versionen (PHP-Modul mysql) tragen sie ein Wert=geheim und Funktion=OLD_PASSWORD, für neue MySQL-Versionen (PHP-Modul mysqli) Funktion=PASSWORD • Alle übrigen Felder enthalten Bool-Variable und werden auf N bzw. 0 gesetzt. |
MySQL Administration DatenbankDie hier vorgenommenen Einstellungen erlauben dem angelegten User den Zugriff auf die Datenbank.Die Zugriffs-Rechte sollten möglichst genau jenen am Server ihres Providers entsprechen. Das erfahren sie entweder aus dessen Angaben oder durch Versuch & Irrtum. Die Felder ab Create_view sind nur in neueren MySQL-Versionen definiert. |
In der Datenbank mysql wählen sie
Tabelle db Legen sie einen neuen Datensatz an: • Feld Host: Tragen sie ein Wert=localhost für den am gleichen Server-PC laufenden Webserver. Für Zugriff von anderen PC ihres LAN legen sie einen weiteren Datensatz an, z.B. mit Wert=192.168.0.* • Feld db: Tragen sie ein Wert=domain_com (genau den Namen der angelegten Datenbank). • Feld user: Tragen sie den User-Namen ein, z.B. Wert=domain_com • Einige der folgenden Bool-Felder werden auf Wert=Y gesetzt, z.B. die Rechte für Select, Insert, Update, Delete, Create_tmp_table, Lock_tables, Create_view, Show_view, Create_routine, Alter_routine, Execute • Alle anderen Felder werden auf Wert=N gesetzt. |
SQL-DumpUm Erfahrung zu sammeln, sollten sie zunächst nur eine einzige einfache Tabelle (z.B. test) anlegen und auf eigenen dynamischen Webseiten verwenden.Wenn das am eigenen Server funktioniert, dann übertragen sie die Struktur und bei Bedarf auch die eingetragenen Daten auf den Server des Providers. Dazu verwenden sie Text-Dateien mit SQL-"Dumps". ♣ Tipp: Übertragen sie - wenn überhaupt - nur kleine Daten-Mengen. Größere Daten-Mangen können nur in Portionen übertragen werden, deren Größe sich nach den technischen Möglichkeiten richtet. Vermeiden sie solche Situationen oder beginnen sie zunächst mit kleinen Dateien <=10 kB. |
Öffnen sie am eigenen Server phpMyAdmin und ihre Datenbank (z.B. domain.com). Wählen sie Exportieren, alle Felder und Format SQL. Kreuzen sie unbedingt die Auswahl Struktur an, dazu die Optionen DROP TABLE und IF NOT EXISTS Wenn sie auch die am eigenen Server eingetragenen Daten übertragen wollen, dann kreuzen sie zusätzlich die Auswahl Daten an, dazu die Optionen Vollständige und Erweiterte Inserts. Mit Klick auf OK wird eine Text-Datei aus kompletten SQL-Befehlen erzeugt (Dump) und in einem Fenster angezeigt. Sichern sie den Text als Datei, z.B. domain.sql Nun muss die Struktur auf den MySQL-Server des Providers übertragen werden. Je nach phpMyAdmin Version gibt es verschiedene Möglichkeiten zum Import der Dump-Datei. Kopieren sie die Dump-Datei *.sql auf den Server ihres Providers und Importieren sie die Datei. Alternativ können sie einen einfachen Dump auch am eigenen PC kopieren und in das phpMyAdmin-Fenster des entfernten Servers einsetzen. |
MySQL-VersionenEinige Details bei der Verwendung von MySQL sind abhängig von der verwendeten Version. Provider agieren meist konservativ. Es ist jedoch sinnvoll, am eigenen Server neue Versionen zu testen.Passwort-Verschlüsselung:
Für ihr Web legen sie am betsen 2 User an: Einen mit dem gleichen User-Namen
wie bei ihrem Provider (Codierung mit OLD_PASSWORD), einen anderen (z.B. domain_com_new)
mit dem gleichen, jedoch nei codierten (PASSWORD) Passwort.Neue Funktionen
Neue MySQL-Versionen bieten viele interessante Funktionen. Führen sie diese in
ihrem Web nur langsam ein, testen sie jedoch am eigenen Server ausgiebig.
So können sie notfalls auch zu einem konservativen Provider wechseln,
verfügen jedoch über Erfahrung mit den neuen (meist auch Arbeits-sparenden)
Funktionen.
|
PHP-Module
Das alte PHP-Modul mysql wird irgendwann auslaufen. Installieren sie am eigenen Server
unbedingt zusätzlich das neue PHP-Modul mysqli und testen sie seine Funktionen.
Mit etwas Aufwand lassen sich PHP-Scripts sogar so auslegen, dass sie mysqli-Funktionen
verwenden, wenn diese verfügbar sind, ansonsten die alten mysql-Funktionen.MySQL-Politik
MySQL ist der weltweit am meisten verbreitete SQL Server. Es ist für den
Hersteller naheliegend, irgendwann einmal Geld dafür zu verlangen.
Ob und wann das geschieht ist unsicher, sie sollten jedoch damit rechnen.Es ist sinnvoll, für ein gutes Produkt einen angemessenen Preis zu bezahlen. Andererseits steigt mit einer solchen Entscheidung der Druck, andere Produkte einzusetzen. Wenn sie über ausreichend freie Resourcen verfügen, dann sollten sie sich z.B. mit dem freien SQL-Server Firebird befassen ... |