Meet the Gerstungs ....
gerstung3 und gerstung4
Für das Webhosting betreiben wir zur Zeit zwei Maschinen, auf denen Webauftritte gehostet werden. Die Namen der Maschinen sind: Gersung3 und Gerstung4, welche gerstung1 und gerstung2 bereits vor einigen Jahren abgelöst haben. Beide Gerstungs laufen unter den Betriebssystem Debian GNU/Linux, zur Zeit in der Revision "sarge" bzw. "sid".
gerstung3 - Technische Spezifikationen (Stand 13.8.03)
Folgende Infomationen könnten für Web-Entwickler relevant sein:
Apache/1.3.27 Server:
at localhost Port 80
kein https
Lokaler Pfad: /var/www/meinedomain.de/www
CGI Pfad: /var/www/meinedomain.de/cgi-bin -> Scriptalias: http://www.meinedomain.de/cgi-bin/
sendmail-pfad: /usr/sbin/sendmail
PHP:
register_globals = On
file_uploads = On
upload_max_filesize = 20M
CGI:
PERL liegt unter /usr/bin/perl
Shebang: #!/usr/bin/perl
This is perl, v5.8.0 built for i386-linux-thread-multi
diverse PERL-Module von CPAN installiert.
SSI (Serverside Includes):
Müssen .sthml heissen ...
CGIs in einer .shtml Datei ruft man z.B. so auf:
-----8<------
-------------
Natürlich muß das CGI vorher installiert werden.
gerstung4 - Technische Spezifikationen (Stand 4.6.03)
Folgende Infomationen könnten für Web-Entwickler relevant sein:
Apache/1.3.26 Server:
at localhost Port 80
https/SSL optional
Lokaler Pfad:
www.meinedomain.de liegt unter: /var/www/meinedomain.de/dynamic/www
Weitere Subdomains kann man durch Anlegen eines Verzecihnisses selbst erzeugen, z.B.
shop.meinedomain.de liegt unter: /var/www/meinedomain.de/dynamic/shop
CGI Pfad: /var/www/meinedomain.de/dynamic/www/cgi -> Scriptalias: http://www.meinedomain.de/cgi/
Jede Subdomain hat ein eigenes CGI.
PHP:
register_globals = On
file_uploads = On
upload_max_filesize = 10M
CGI:
PERL liegt unter /usr/bin/perl
Shebang: #!/usr/bin/perl
This is perl, v5.6.1 built for i386-linux
diverse PERL-Module von CPAN installiert.
SSI (Serverside Includes):
Müssen .sthml heissen ...
CGIs in einer .shtml Datei ruf man z.B. so auf:
-----8<------
-------------
Natürlich muß das CGI vorher installiert werden.
.htaccess nutzen
htaccess
Der Dateiname muss .htaccess heissen
"AllowOverride All" ist gesetzt.
Einige Möglichekeiten, die eine .htaccess bietet:
Hier einige Beispiele:
1. Passwortschutz:
-----8<------
AuthName "Passwortgeschuetzer Bereich"
AUthType Basic
AuthUserFile /var/www/meinedomain.de/htapsswd
require valid-user
-------------
Eine htapsswd-Datei sieht etwa so aus:
-----8<------
admin:phVK1cSdsdsdKw
user:passworthash
-------------
Unter Linux erzeugt man solche Dateien mit dem Kommando htpasswd auf der shell.
2. Eigene Error-Seiten definieren:
-----8<------
ErrorDocument 404 /page-not-found.html
-------------
3. PHP Optionen Setzen:
-----8<------
php_value register_globals off
-------------
(Achtung! KEINE "=" Zeichen, wie in der php.ini!)
Alternativ können Sie die PHP Optionen natuerlich auch fest in Ihr Script einbauen:
-----8<------
ini_set("upload_max_filesize", "25M");
ini_set("max_execution_time", "500");
ini_set("post_max_size", "500");
-------------
Datenbanken
gerstung3:
mysql (mysql Ver 11.18 Distrib 3.23.52, for pc-linux-gnu (i686))
gerstung4:
mysql (mysql Ver 11.18 Distrib 3.23.52, for pc-linux-gnu (i686))
Postgres 7.2 (7.3 Upgrade ist gerade in Planung)
PHP File Uploads ...
Wer mit der File-Upload Funktion von PHP Dateien auf den Server hochlädt, wird inbesondere bei Gerstung4 darauf stossen, dass das PHP-Modul im Apache als User "www-data" betrieben wird. Dies führt dazu, dass die Datei diesem User gehört und nicht dem eigenen (Ftp-)User. Will man die Datei nun weiterbearbeiten, so muss das entsprechende Schreibrecht gesetzt werden. Dies geht unter PHP mit der "chmod"-Funktion. Ein geeignetes Recht ist z.B. "0660" (http://de.php.net/chmod)
Weiterleitung von Web-Seiten
Eine Alternative zur Weiterleitung von http-Requests ist, statt einer .htaccess datei eine html-Seite mit folgendem Metatag zu verwenden:
<HTML>
<HEAD>
<TITLE> Weiterleitner </TITLE>
<META HTTP-EQUIV="Refresh" CONTENT="5; URL=autoforward_target.html">
</HEAD>
<BODY>
Weiterleitner Text hier ....
</BODY>
</HTML>
Unsere Debian apt-Quellen ...
cat /etc/apt/sources.list
deb http://debian.net-lab.net/debian sid main non-free contrib
deb-src http://debian.net-lab.net/debian sid main non-free contrib
deb http://debian.net-lab.net/debian sid/non-US main contrib non-free
deb-src http://debian.net-lab.net/debian sid/non-US main contrib non-free
Zur Zeit untersuetzen wir nur "sid".