TU Berlin

ZE CampusmanagementFAQs

"das Wort tubIT in roter Schrift auf weißem Grund"

Inhalt des Dokuments

zur Navigation

Hinweise zur Nutzung der konventionellen Webauftritte

Diese Seite ist für die Betreuer und Administratoren von konventionellen Webservern gedacht. Sie enthält allgemeine Hinweise zur Konfiguration der Webauftritte und kleine Anleitungen für einzelne Probleme.

Optionen konventioneller Webauftritt

Nur TUB-Einrichtungen können einen konventionellen Webserver beantragen. Folgende zusätzliche Optionen gibt es:

  • statische HTML­-Seiten über die Userpages veröffentlichen
    => www.user.tu­-berlin.de
  • Vereine oder studentische Gruppen können nahestehende Fachgebiete bitten, ihre Webseiten bei sich unterzubringen.
  • Fachgebietsübergreifende Projekte können Webadressen der Form <name>.projekte.tu­-berlin.de oder <name>.projects.tu­-berlin.de beantragen. Ein beteiligtes Fachgebiet muss den konventionellen Webserver jedoch beantragen und ist für diesen auch zuständig.

AFS-Rechte / Zugriffsrechte

Egal wie Sie auf die Webdaten zugreifen, Sie benötigen immer ein provisioniertem TUB-Account (nachfolgend Benutzer genannt). Dieser Benutzer benötigt für den Zugriff auf die Webdaten die entsprechenden Rechte. Für jeden Webauftritt wird automatisch eine AFS-Gruppe erstellt, die wir Ihnen in der E-Mail-Bestätigung mitgeteilt haben. Sie können dieser Gruppe ganz einfach weitere Benutzer hinzufügen, die dann Zugriff auf die Webdaten erhalten. Hierfür können Sie den Befehl:

# pts adduser <Benutzer> <Gruppenname>

ausführen. Der Befehl kann unter Linux einfach in einer beliebigen Shell und unter Windows in einer Eingabeaufforderung ausgeführt werden. Eine Anleitung zum Setzten von AFS-Rechten unter Windows finden Sie hier. Die Verwaltung von Mitgliedern einer Gruppe ist jedoch nur über die Eingabeaufforderung möglich.

Achtung: Die AFS-Gruppe für Webauftritte hat z.T. erst ab dem www-Verzeichnis Zugriffsrechte. Sollten Sie nicht auf Ihre Webdaten zugreifen können bitten Sie Ihren AFS-Verantwortlichen darum, der Gruppe oder den Mitgliedern der Gruppe das l-Recht für den darüberliegenden Ordner, der wie ihr OrgName heißt, zu vergeben.

PHP-Skripte

Wir verwenden in der neuen Serverumgebung nicht mehr das Apache-PHP-Modul. Alle PHP-Skripte werden als CGI ausgeführt. Dadurch können die Skripte verschiedener Auftritte mit unterschiedlichen Rechten ausgeführt werden. Somit ist es nicht möglich die Dateien anderer Webauftritte auszulesen, was ein enormer Sicherheitsvorteil ist. Bei einigen PHP-Applikationen muss dies während der Konfiguration berücksichtigt werden.
Per Default werden alle Dateien im htdocs-Ordner mit der Endung .php automatisch als PHP-Skript interpretiert und ausgeführt. Eine Anpassung der PHP-Skripte im htdocs-Ordner ist somit nicht notwendig.

CGI-Skripte

Die Ausführung von CGI-Skripten ist auf den bereits vorhandenen cgi-bin-Ordner, der parallel zum htdocs-Ordner liegt, beschränkt. Dateien mit der Endung .cgi oder .pl werden als CGI-Skript interpretiert und ausgeführt. Perlskripte müssen mit folgender Zeile beginnen: #!/usr/bin/perl . Für Shell-Skripte muss die erste Zeile #!/usr/bin/sh bzw. #!/usr/bin/bash für Bash-Skripte lauten.

Die CGI-Skripte müssen ausführbar sein! Hierfür muss das Unix execute-Recht gesetzt sein. Auf einem Linuxrechner, der Zugriff auf das AFS hat, können sie allen Dateien des cgi-bin-Ordners mit folgendem Befehl das execute-Recht vergeben:

# chmod -R a+x BASIS-PFAD/cgi-bin/


Sollten Sie Windows verwenden, können Sie sich per ssh auf sshgate.tu-berlin.de verbinden und dort die entsprechenden Rechte setzen. Viele ftp/ssh-Programme bieten ebenfalls die Möglichkeit Unix-Rechte zu vergeben. Der Besitzer sowie die Gruppe sind bei den CGI-Skripten nicht von Bedeutung. Der Zugriff wird durch die AFS-Rechte gesteuert.

error_reporting in PHP

Der PHP-Interpreter kann verschiedene Fehlermeldungen bei der Ausführung von PHP-Skripten an den Browser ausgeben. Damit bei fehlerhaften Skripten keine weiteren Informationen an potentielle Angreifer ausgegeben werden, werden per Default nur Syntaxfehler augegeben.
Wird lediglich eine weiße Seite ausgegeben, liegt dies u.U. an einem PHP-Fehler. Sie können mit der PHP-Anweisung error_reporting(E_ALL); sämtliche PHP-Fehler ausgeben lassen. Fügen Sie die Zeile einfach am Anfang Ihres PHP-Skriptes ein. Feinere Abstufungen können ebenfalls angegeben werden. Weitere Informationen dazu finden Sie in der PHP-Dokumentation.

.htaccess Einstellungen

Aus Sicherheitsgründen können nicht alle Direktiven innerhalb von .htaccess-Dateien verwendet werden.
Die folgenden Direktivgruppen dürfen geändert werden:
AuthConfig, FileInfo, Indexes, Limit.

Die folgende Direktivgruppe darf nicht geändert werden:
Options.

Per Default ist die Direktive Options wie folgt gesetzt:
MultiViews ExecCGI Indexes SymLinksIfOwnerMatch.

Die Inhalte von Verzeichnissen ohne Index-Datei werden demnach aufgelistet und symbolischen Links wird gefolgt, falls der Link und die Zieldatei dem gleichen Benutzer gehören. Verwenden Sie dennoch eine nicht erlaubte Direktive, wird ein "Internal Server Error" zurückgegeben.

HTTPS erwzwingen / HTTPS-Redirect

Sie wollen die Besucher Ihrer Seite automatisch  auf HTTPS, also eine verschlüsselte Verbindung, umleiten? Dies können Sie ganz einfach mit einer RewriteRule erledigen.

Legen Sie eine .htaccess Datei in Ihr htdocs-Verzeichnis oder ein Unterverzeichnis, ab dem die Automatische Umleitung auf HTTPS erfolgen soll. Tragen Sie die folgenden Zeilen unverändert ein. Sie müssen keine Änderungen vornehmen, damit dies in ihrem Webauftritt funktioniert!

# Weiterleitungen aktivieren
RewriteEngine On
# HTTPS erzwingen
RewriteCond %{HTTP:SECURE} !=true  
RewriteRule .*  %{SERVER_NAME}%{REQUEST_URI}


Achtung: Die sonst verwendete Variable %{HTTPS} ist im Kontext der konventionellen Webauftritte NICHT gesetzt und kann somit nicht zur Überprüfung verwendet werden.

Webadresse automatisch auf einen Unterordner umleiten

Sie haben haben für ein Projekt eigene Webseiten in einem Unterordner angelegt und wollen diese nun über eine zusätzliche Webadresse direkt ansprechen? Zunächst muss die neue Webadresse durch uns eingerichtet werden. Schicken Sie uns einfach eine und geben Sie die Adresse des Webauftritts sowie die gewünschte zusätzliche Adresse an.

Nehmen wir an Sie haben folgende Ordnerstruktur.

htdocs/
|.....[Webdaten des eigentlichen Auftritts]
|.....projekt1/
........|....[Webdaten des Projekts]



Nach der Einrichtung zeigt die neue Webadresse direkt auf das htdocs-Verzeichnis. Damit sie direkt auf das projekt1-Verzeichnis zeigt, legen Sie einfach eine Datei names .htaccess im htdocs-Verzeichnis an. Falls die Datei bereits existiert, wird diese einfach um weitere Einträge ergänzt. In die Datei kopieren Sie nun den folgenden Inhalt und passen nur noch die Webadresse und den Zielordner an.

# RewriteEnginge einschalten, falls noch nicht geschehen
RewriteEngine On
# Die Umleitung erfolgt nur fuer diese Webadresse (ohne http(s)://)
RewriteCond %{HTTP_HOST} =projekt1.OrgName.tu-berlin.de
# nur umleiten, wenn der Ordner noch nicht in der URI auftaucht
RewriteCond %{REQUEST_URI} !^/projekt1.*
# fuege den Ordner projekt1 transparent in die URI ein
RewriteRule ^(.*)    /projekt1/$1    [L]


Mit diesen Änderungen landen Sie mit den folgenden Adressen jeweils im Ordner projekt1:
projekt1.OrgName.tu-berlin.de/projekt1/
projekt1.OrgName.tu-berlin.de/
und können so die Doppelung des Projektnamens in der Webadresse und dem Pfad vermeiden.

Auflisten von Verzeichnissen verhindern

Möchten Sie das Auflisten von Verzeichnisinhalten unterbinden, haben Sie mehrere Möglichkeiten. Sie können z.B. einfach eine (ggf. leere) Index.html-Datei anlegen. Enthält der Ordner keine Dateien, die direkt per Browser aufgerufen werden sollen, können sie auch eine .htaccess-Datei mit folgendem Inhalt im Verzeichnis anlegen:
Order Allow,Deny
Deny From All

Die .htaccess-Datei wirkt sich auch auf alle Unterordner aus und verbietet jedlichen Webzugriff.

Sie können auch bestimmte Dateien von der Auflistung via .htaccess ausnehmen:
# Verhindert die Auflistung aller Dateien
IndexIgnore *
# Verhindert die Auflistung von zip-Archiven und SQL-Dumps
IndexIgnore *.zip *.sql

Auch dies wirkt sich auf alle Unterordner aus, verhindert jedoch nicht den Zugriff, sondern nur die Auflistung von Ordnerinhalten.

Sollte für Sie keine der Varianten in Frage kommen, können wir für Ihren Webauftritt die Option Indexes auch global abschalten. Wenden Sie sich hierfür bitte an das .

Index-Dateien und deren Reihenfolge

Wird eine Adresse ohne Dateinamen verwendet, z.b. host.orgname.tu-berlin.de/Projekt1/, versucht der Webserver eine Index-Datei auszuliefern. Dabei prüft er nacheinander das Vorhandensein von Index-Dateien mit verschiedenen Endungen und liefert die erste aus, die gefunden wird. Es werden die folgenden Index-Dateien in der angegebenen Reihenfolge geprüft:
index.html index.htm index.html.var index.php

Eine index.php wird demnach nur dann angezeigt, wenn es weder eine index.html noch eine index.htm gibt und auch keine sprachspezifischen Index-Dateien wie index.html.de vorhanden sind. Wird keine Index-Datei gefunden, zeigt der Webserver den Verzeichnisinhalt an.

Server Side Includes (SSI)

SSI ist per Default nicht aktiviert. Möchten Sie SSI verwenden, schreiben Sie uns einfach eine E-Mail an das und geben Sie an, ob Sie SSI für ihren gesamten Webbaum oder nur einen Teil davon benötigen.

Errorlogs / Accesslogs

Per Default werden keine Accesslogs angelegt. Wenn Sie eine Auswertung der Besucherzahl und der aufgerufenen Webseiten vornehmen möchten, können Sie dies hier beantragen. Wenn Sie nur die Accesslogs benötigen und deren Analyse selbst vornehmen wollen, senden Sie bitte eine E-Mail an das . Bitte beachten Sie, dass wir aus Gründen des Datenschutzes ausschließlich anonymisierte Logs anlegen. Das bedeutet, es wird nicht die vollständige IP-Adresse gespeichert, sondern die letzen zwei Stellen werden auf 0 gesetzt, z.B. 130.149.0.0.

Seit dem 19.05.2010 werden keine separaten ErrorLogs mehr im Ordner logs/ angelegt. Sollten Sie für die Arbeiten an Ihrer Webanwendung Zugriff auf die ErrorLogs benötigen, können wir dies vorrübergehend einrichten. Wenden Sie sich hierfür an das .

PHP-Version

Auf den konventionellen Webservern steht PHP in der Version 7.1 zur Verfügung.In Vorbereitung ist derzeit mindestens die Version 7.2.

Betriebssystem

Als Betriebssystem kommt derzeit RedHat Server Enterprise Linux 6.10 zum Einsatz.

Nachträgliche Beantragung von MySQL

Wenn Sie Ihren konventionellen Webauftritt um eine MySQL Datenbank ergänzen wollen, schreiben Sie bitte eine formlose E-Mail an das mit folgenden Angaben:

  • Kostenstelle
  • AFS-Pfad des Webauftritts

Navigation

Direktzugang

Schnellnavigation zur Seite über Nummerneingabe