It-Services::Persönliche Webseiten

Anleitung zur Einrichtung und Benutzung der privaten Homepage (userpage).
Bitte beachten Sie auch den Troubleshooting-Bereich am Ende der Seite.

A - Grundlegendes

A.1 Unter welcher Adresse ist meine private Homepage im WWW erreichbar?

Die Homepages liegen im Web auf http://page.mi.fu-berlin.de/ .

Der Zugriff kann wahlweise erfolgen über:

http://page.mi.fu-berlin.de/<username>/ hier liegen die Daten
http://www.inf.fu-berlin.de/users/<username>/ per proxy von page
http://www.math.fu-berlin.de/users/<username>/ per proxy von page
http://www.mi.fu-berlin.de/users/<username>/ per proxy von page

Außerdem gibt es folgende automatische Umleitungen
http://page.inf.fu-berlin.de/~<username>/ http://page.mi.fu-berlin.de/~<username>/
http://www.inf.fu-berlin.de/~<username>/ http://www.inf.fu-berlin.de/users/<username>/
http://www.math.fu-berlin.de/~<username>/ http://www.math.fu-berlin.de/users/<username>/
http://www.mi.fu-berlin.de/~<username>/ http://www.mi.fu-berlin.de/users/<username>/

Zu bemerken ist, das zwar für jeden User seine Homepage an 4 verschiedenen Orten ausgeliefert wird, er/sie aber selbst wählen kann, welche URL veröffentlicht wird, da wir in keinem der /users/ die Liste unser aktuellen Homepages veröffentlichen.

A.2 Wo finde ich meinen "Webspace" / Wo soll ich meine Webseiten ablegen?

Der konkrete Zugriff ist abhängig vom verwendeten Betriebssystem:

Unter Linux oder Unix

HELP Kein web-home gefunden?
web-home/ ist ein Symlink auf
/web/page.mi.fu-berlin.de/web-home/<username>/
Exisitert er nicht, so kann er mit dem Befehl
ln -s /web/page.mi.fu-berlin.de/web-home/$USER ~/web-home
wieder in das eigene HomeVerzeichnis verlinkt werden.
  • Jeder Nutzer/jede NutzerIn sollte sein/ihr Web-Home unter
~/web-home/
im eigenen HomeVerzeichnis finden.

  • Alle Webdateien (HTML, PHP, Bilder, etc) müssen in
~/web-home/public_html/
abgelegt werden, damit sie angezeigt werden.

  • Eigene Web-Anwendungen können Daten in
~/web-home/data-rw/
speichern. (siehe Wo können meine Webanwendungen ihre Daten speichern?)

Unter Windows

HELP Kein Laufwerk w:\
1. File Explorer starten, "This PC"(im Startmenü nach "This PC" suchen)
2. Tab Computer
3. Map Network Drive...
4. Drive w: wählen
5. als Pfad \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\ eingeben
6. Reconnect at logon einschalten
7. Finish drücken. Fertig.

Falls Sie Laufwerksbuchstaben bevorzugen, empfehlen wir den Speicherbereich für alle Webseiten auf dem Laufwerk
W:\
anzulegen.

Das Web-Home findet sich unter Windows unter:
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\<username>

ALERT! Wenn Sie von einem Windows-Rechner auf \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\..... zuzugreifen versuchen, und nicht in der Domäne FU-BERLIN angemeldet sind, müssen Sie sich mit Ihrem FU-Accountnamen in der Schreibweise FU-BERLIN\<username> und mit Ihrem zugehörigen FU-Passwort authentifizieren. ALERT!

Alle Webdateien (HTML, PHP, Bilder, etc) müssen im Unterverzeichnis
web-home\public_html\
abgelegt werden, damit sie vom Webserver ausgeliefert werden können.

Auch hierhin kann mensch sich eine Abkürzung anlegen:
  1. Rechtsklick auf dem Desktop
  2. Neu/Verknüpfung
  3. Dort dann den Pfad \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\<username> eingeben
  4. Weiter drücken. Fertig.

Unter Mac OS X

Der eigene Webseiten-Ablagebereich kann mittels Samba ( smb: ) angesprochen und für/über den "Finder" zugänglich gemacht werden:

Finder > "Gehe zu" > "Mit Server verbinden" (oder 'Propeller'- K), dort dann eingeben

smb://FU-BERLIN;<username>@web.mi.fu-berlin.de/page.mi.fu-berlin.de/web-home/<username>/
('<username>' bitte durch den eigenen FU-Accountnamen ersetzen!)

A.3 Wo können meine Webanwendungen ihre Daten speichern?

Der Datenbereich data-rw

  • Der Datenbereich in dem Web-Anwendungen wie CGI-Skripte, PHP-Seiten, etc., ihre Daten ablegen können befindet sich im web-home -Verzeichnis unter data-rw : ~/web_home/data-rw/ .

  • data-rw ist ein Symlink, der absolute Pfad des data-rw/ -Verzeichnisses lautet:
Linux: /web/page.mi.fu-berlin.de/data-rw/<username>/
Windows: \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\data-rw\<username>\

Ein Beispiel

Liegt z.B. das eigene CGI-Skript "meinskript.cgi" von Frau Mustermensch in
~/web-home/public_html/cgi-bin/meinskript.cgi

bzw. unter Windows
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\cgi-bin\meinskript.cgi

so kann das Skript über
../../data-rw/meindatenfile.dat
auf den Datenbereich zugreifen.

Technische Anmerkung: Mit Ausnahme der .htaccess -Datei können und sollten überall relative Pfade benutzt werden, also ../<verzeichnisname>/ statt /web/page.mi.fu-berlin.de/web-home/mustermensch/public_html/<verzeichnisname>/ .

A.4 Zusammenfassung: Welche Dateien sollten wo liegen?

ACHTUNG der Dateityp von ausführbaren Dateien (cgi,py,php,...) sollte UNIX sein. suexec möchte gern die Unix-Zeilenende-Zeichen sehen.
Inhalt Endungen Verzeichnis Linux Verzeichnis Windows
html .htm
.html
web-home/public_html/ \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\
Text .txt web-home/public_html/ \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\
Bilder,
Flash, etc.
.jpg
.png
.gif …
web-home/public_html/ \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\
PHP .php
.php3
.php4
.phtml
web-home/public_html/
web-home/public_html/cgi-bin/
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\cgi-bin\
CGI-
Skripts
.cgi
.pl .py
web-home/public_html/
web-home/public_html/cgi-bin/
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\
\\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\cgi-bin\
CGI-
Skripts
beliebige
Endung
web-home/public_html/cgi-bin/ \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\public_html\cgi-bin\
Daten-Bereich
aktive Inhalte
(CGI,PHP,...)
beliebige
Endung
web-home/data-rw \\web.mi.fu-berlin.de\page.mi.fu-berlin.de\web-home\mustermensch\data-rw\

B - Erweitere Funktionen und Informationen

B.1 Benutzung von Perl, Python, andere und PHP

Alle aktiven Inhalte auf dem Webserver laufen aus Sicherheitsgründen mit Ihren Rechten (<username>) als CGIs ausgeführt.
Das heißt, sie müssen
  • Ihnen gehören
  • ausführbar sein (executable bit, rwx------, bzw. chmod 700 <dateiname>) und
  • als erste Zeile enthalten:

Perl

#!/usr/bin/perl
(aktuelle Version ist: perl5 (revision 5 version 8 subversion 4), 2006-11-20)

Python

Wählen Sie aus einer der folgenden Zeilen:

#!/usr/bin/python
#!/usr/bin/python2.1
#!/usr/bin/python2.2
#!/usr/bin/python2.3
#!/usr/bin/python2.4

sonstige Interpreter

#!<Pfad zum Interpreter>/<Interpreter>

PHP

PHP-AnwenderInnen haben es bequemer, denn PHP-Skripte (Endung .php, .php4, etc.) werden per suPHP ausgeführt. So können sich alle PHP-AnwenderInnen die erste Zeile sparen, außerdem muß nicht das 'executable bit' gesetzt werden.

Soll ein anderer PHP-Interpreter verwendet werden, dann bitte beachten:
  • in cgi-bin/ : eine beliebige Dateiendung außer .php / .php4 / … benutzen
  • außerhalb von cgi-bin/ : eine beliebige CGI-Skript Dateiendung (.cgi , …) benutzen
  • in der ersten Zeile entsprechend sonstige Interpreter den PHP-Interpreter festlegen

B.2 LaTeX MathML MathJax

Wir haben MathJax auf page.mi.fu-berlin.de, www.math.fu-berlin.de, www.inf.fu-berlin.de und www.mi.fu-berlin.de installiert. Damit ist es nun ein leichtes LaTeX- oder MathML-Code in eigene Seiten einzubetten.
  • im HEAD folgende Zeile einfügen:
    <script type='text/javascript' src='/javascript/mathjax/MathJax.js?config=default'></script>
  • dann rendert folgender LaTeX-Code im BODY:
    When $a \ne 0$, there are two solutions to \(ax^2 + bx + c = 0\) and they are
    $$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$$
    * folgendes Ergebnis: http://page.mi.fu-berlin.de/javascript/mathjax/test/sample-tex.html

Weitere MathJax-Beispiele: http://www.mi.fu-berlin.de/javascript/mathjax/test/examples.html.

In diesem Wiki nutzen wir MathModePlugin und LatexModePlugin welche nur LaTeX unterstützen.

B.3 Wie kann ich einen anderen User meine Webseiten editieren lassen?

Anleitung unter Linux:

  • legen Sie in ihrem web-home/ eine leere Datei namens .multiuser an.
  • setzen Sie mittels Access Control Lists (ACLs) wie folgt die Rechte:
setfacl -R -d -m u:<weiterer username>:rwx ~/web-home/

Ein Beispiel:

Professor Poggles möchte Sekretärin Snuggles gestatten seine privaten Homepages zu editieren.
Also loggt er sich unter Linux ein und gibt folgende Shell-Befehle ein:
touch ~/web-home/.multiuser
setfacl -R -P -d -m u:snuggles:rwx ~/web-home/
setfacl -R -P -m u:snuggles:rwx ~/web-home/

Jetzt kann Sekretärin Snuggles Dateien in seinem Webbereich editieren.
Doch Achtung: Neu angelegte Dateien gehören zur Zeit erst nach bis zu 30 Minuten Professor Poggles, und sind vorher nicht abrufbar.

B.4 Was darf ich in der privaten Homepage ablegen?

  • Es gelten die Nutzungsbedingungen aus dem Nutzerantrag des Rechnerbetriebs.
  • Im weiteren gelten die Regeln der ZEDAT auf http://userpage.zedat.fu-berlin.de/:
    • "Nicht zulässig sind gemäß der Benutzerordnung des DFN-Vereins pornographische, gewaltverherrlichende oder diskriminierende Darstellungen, Angebote von Vereinen oder Firmen sowie jegliche kommerzielle Nutzung. Die von Benutzern erstellten Seiten stellen kein offizielles Informationsangebot der Freien Universität Berlin dar und unterliegen ausschließlich der persönlichen Verantwortung des jeweiligen Anbieters."
  • Sowie die Benutzerordnung des DFN

B.5 Impressums-Pflicht beachten!

Auszug aus der email des Dekans zum Thema, vom 18. Januar 2005:
(Message-ID: 20050118151204.3559.qmail@math.fu-berlin.de)

"[...] Private Seiten (auf http://page.mi.fu-berlin.de/<username>/) müssen vom jeweiligen Inhaber/der Inhaberin mit einem eigenen Impressum der betreffenden Person versehen werden. Ein Verweis auf das Fachbereichsimpressum ist bei den privaten Nutzerseiten nicht zulässig! Bitte beachten Sie auch, dass die Anschriftenangabe im Web-Impressum "ladungsfähig" sein muss. Damit scheiden z.B. Postfach-Adressen aus, da man beispielsweise Unterlassungsklagen nicht an ein Postfach zustellen kann.

Aufgrund der Trennung zwischen offiziellen Seiten der Arbeitsgruppen/des Fachbereiches und privaten Webseiten bitten wir dringend darum, dienstliche Webseiten nicht unter http://page.mi.fu-berlin.de/... abzulegen sondern im Webbereich der entsprechenden Arbeitsgruppe oder des jeweiligen Projektes. (Wenn Sie hierfür erst noch entsprechenden Webspace benötigen, wenden Sie sich bitte an den Rechnerbetrieb dv@mi.fu-berlin.de.) [...]"

Weiteres auch auf http://www.heise.de/ct/02/15/182/default.shtml

Bei Fragen oder Problemen wenden Sie sich bitte an den Rechnerbetrieb, Kontaktinformationen finden sie auf
http://www.mi.fu-berlin.de/tec/contact.shtml

Dort können Sie auch eine Kopie der o.g. EMail erhalten.


C - Technisches, Probleme und Lösungen

C.1 Technischer Hintergrund

  • Aufgrund mehrerer Sicherheitsvorfälle mit aktiven Inhalten die jeweils längere Ausfälle des Userwebservers zur Folge hatten, haben wir folgende Sicherheitsmaßnahmen getroffen:
    • Die Userpages wurden auf zwei Server verteilt:
      • Server pagestatic für statische Inhalte, wie reine HTML- oder Text-Dateien und Bilder
      • Server pagedynamic für alle dynamischen Inhalte, die auf dem Webserver interpretiert oder ausgeführt werden, wie
        • CGIs (Perl, Shellcode, C/C++ Programme, etc.)
        • PHP
        • Python
    • Sollte es -trotz unserer Sicherungsmaßnahmen- erneut einen Sicherheitsvorfall auf pagedynamic geben, so bleiben die statischen Inhalte (Nur .html, Textdateien und Bilder) Dank des separaten Servers pagestatic online.
  • Die Aufteilung auf zwei Server erfolgt tranparent für den Betrachter/die BetrachterIn der Webseiten, Besucher der Webseiten sehen nur einen Server: http://page.mi.fu-berlin.de/
  • Auf pagedynamic wurden Codebereich und Datenbereich getrennt:
    • web-home, der Bereich in dem alle darzustellenden oder auszuführenden Inhalte liegen, steht auf den Webservern nur read-only zur Verfügung. So können Webseiten nur erschwert manipuliert und bösartige Skripte nicht leicht nachgeladen werden
    • data-rw - nur in diesem Bereich können können CGI-, PHP- und andere Skripte Daten ablegen. Der Inhalt dieses Verzeichnisses ist nicht ausführbar und nicht darstellbar.

C.1.1 Directory Indexes

  • Aufgrund eines schwerwiegenden Vorfalls haben wir uns entschlossen die automatische Generierung von Directory Indexes auf allen unseren Webservern abzuschalten.
    Wer möchte das bestimmte Verzeichnisse automatisch vom Webserver angezeigt werden, kann in dem entsprechenden Verzeichnis eine Datei .htaccess mit dem Inhalt Options +Indexes anlegen. Siehe http://wiki.apache.org/httpd/DirectoryListings

C.2 Troubleshooting / Probleme & Lösungen

Falls Sie nach der Umstellung Probleme haben, beachten Sie bitte folgende Hinweise.

Ich kann unter Windows nicht auf \\web\ zugreifen.

Bitte versuchen Sie es mit \\web.mi.fu-berlin.de\ . Eventuell ist in Ihrer Searchlist manuell vor "mi.fu-berlin.de" die Domain "fu-berlin.de" eingetragen worden. Da es an der FU einen Rechner "web.fu-berlin.de" gibt, wird der Rest der Searchlist nicht mehr abgearbeitet, und der Zugriff auf unseren Webstorage "web.mi.fu-berlin.de" schlägt fehl.

Abhilfe:
  • \\web.mi.fu-berlin.de\
oder
  • Auf selbstverwalteten PCs die Searchlist anpassen.

Meldung "Error 500"

*Ich bekomme beim Aufruf meiner Seite "Error 500 - Internal Server Error" *

Bitte überprüfen Sie,

  • ob an der entsprechenden Stelle eine index.cgi/index.pl oder filename.cgi/filename.pl liegt. Falls ja, passen sie diese bitte wie oben beschrieben (in der ersten Zeile muß der Interpreter stehen) an.
  • ob Sie eine .htaccess -Datei mit der Anweisung Options verwenden. Die Verwendung der Options -Anweisung ist nicht länger zulässig, da durch sie Sicherheitseinstellungen des Webservers (FollowSymlinks, Includes) aufgehoben werden könnten.

Passwortschutz und .htaccess

Die englischen Seiten auf apache.org geben eine gute Einführung:

Meine passwortgeschützten Bereiche funktionieren nicht mehr (.htaccess / .htpasswd)!

Mit dem Umzug auf einen neuen Server und ein neues Konzept haben sich die Pfade geändert. Werden Passworte eingesetzt, so steht in der .htaccess ein absoluter Pfad zur einer Passwort-Datei, der jetzt korrigiert werden muß.

Der absolute Pfad zum eigenen Web-Bereich lautet:

/web/page.mi.fu-berlin.de/web-home/<username>/public_html/
Bitte statt <username> den eigenen Accountnamen einsetzen.

Wie beschänke ich den Zugriff?

Mit den folgenden Anweisungen in einer .htaccess -Datei wird der Zugriff auf das Verzeichnis mit seinen Dateien und allen Unterverzeichnissen für alle Fachbereichsrechner freigegeben bzw. fuer alle externe gesperrt:
order deny,allow
deny  from all
allow from mi.fu-berlin.de
allow from math.fu-berlin.de
allow from inf.fu-berlin.de

Bitte keine IP-Adressen für Netze verwenden, die funktionieren nicht zuverlässig!

Meldung "Error 403"

Ich bekomme Error 403. / Die Rechteinstellungen in meinem Web-Home sind durcheinander!?

Bitte für Einstellungen im Web-Home ausschließlich getfacl und setfacl, da diese Bereiche jetzt Access Controll Lists (ACLs) einsetzen. chmod nur noch zum rücksetzen benutzen(siehe unten)!

Am schnellsten lassen sich die richtigen Berechtigungen mit exakt folgenden Befehlen zurücksetzen:

(unter Linux)

# alle acls entfernen
setfacl -R -P -b -k /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
# alle gruppen und other erlaubnisse entfernen
chmod   -R go-rwxs /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
# default setzen auf user www-data darf lesen und ausführen aka verzeichnisse durchschreiten
setfacl -R -P -d -m u:www-data:rx,g::---,o::---,m::r-x /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
setfacl -R -P -d -m u:www-data:rx,g::---,o::---,m::r-x /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
# aktuelle rechte setzen auf www-data darf lesen und ausführen aka verzeichnisse durchschreiten
setfacl -R -P -m u::rwx,u:www-data:rx,g::---,o::---,m::r-x /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
setfacl -R -P -m u::rwx,u:www-data:rx,g::---,o::---,m::r-x /web/page.mi.fu-berlin.de/web-home/$USER;sleep 5
# prüfen ob die rechte stimmen
getfacl /web/page.mi.fu-berlin.de/web-home/$USER && echo erledigt.
#

(Die doppelten Zeilen müssen auf Grund eines ACL-Bugs so sein)

ALERT! Wenn Sie mit mehreren Personen in Ihrem web-home arbeiten, so können diese jetzt nicht mehr zugreifen.
Bitte die Schritte unter Wie kann ich einen anderen User meine Webseiten editieren lassen? erneut durchführen!
ALERT!
Weitere Informationen zu Access Controll Lists (ACLs) finden Sie unter man getfacl bzw. man setfacl, sowie unter Resourcen im Internet weiter unten auf dieser Seite.

Bitte beachten Sie, dass der User "www-data" stehts das Recht behalten muss auf Dateien zuzugreifen, die der Webserver ausliefern soll.

Rundmails des Rechnerbetriebs

Weitere Informationen des Rechnerbetriebs

Resourcen im Internet

D - Kommentare

Bitte bei Kommentaren beachten, dass Systemfehler direkt per Mail an staff geschickt werden sollten,
da der Rechnerbetrieb die Kommentare auf dieser Seite nicht regelmässig kontrolliert.

 

Bitte bei Kommentaren beachten, dass Systemfehler direkt per Mail an staff geschickt werden sollten, da der Rechnerbetrieb die Kommentare auf dieser Seite nicht regelmässig kontrolliert.

  • example.cgi.txt: beispiel-cgi: /web/page.mi.fu-berlin.de/web-home/~/public_html/cgi-bin/example.cgi

  • example.php.txt: beispiel-php: /web/page.mi.fu-berlin.de/web-home/~/public_html/example.php

  • index.html: beispiel index.html: /web/page.mi.fu-berlin.de/web-home/~/public_html/index.html
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback