====== Ihre Webseite auf dem Homepages-Server ======
Mitarbeiter und Professoren der OTH können eine eigene Homepage auf [[https://hps.hs-regensburg.de|dem Homepages-Server]] anlegen.
Dort wird PHP als Skriptsprache und MariaDB als Datenbank angeboten, sowie ein Speicher von 50MB.
{{INLINETOC}}
====== Hochladen Ihrer Webseite ======
===== Für Eilige ... =====
*Sofern nicht schon geschehen, einen Zugang mit dem [[https://hps.hs-regensburg.de/accmgr.php|Zugangsmanager]] erstellen.
*Mit einem SCP-Client auf hps.hs-regensburg.de mit Port 22 verbinden.
*Benutzer im Format abc12345, Passwort wie im CIP-Pool.
*Webseite ins "html" Verzeichnis hochladen, fertig. Die Seite ist dann mit einem Link in folgendem Format zu erreichen:
https://hps.hs-regensburg.de/~abc12345/
oder
https://hps.hs-regensburg.de/abc12345/
Spezialkennungen werden im selben Format aufgerufen:
https://hps.hs-regensburg.de/~spezialkennung/
===== ... und in Ausführlich =====
==== Zugang erstellen ====
Sofern nicht schon geschehen, einen Zugang mit dem [[https://hps.hs-regensburg.de/accmgr.php|Zugangsmanager]] erstellen.
==== SCP-Client herunterladen ====
Zum Hochladen der Webseite steht Ihnen ein SSH-Zugang zur Verfügung. Mit einem SCP-Client wie [[http://winscp.net/eng/download.php|WinSCP]] können Sie damit ihre Homepage auf den Server kopieren. Laden Sie sich hierzu das Paket "Installation package" und installieren sich das Programm auf ihren Rechner. Nach dem Start von WinSCP sollte es so aussehen:
{{ :public:netz:netz_hps_1login.png?nolink |Loginfenster von WinSCP}}
==== Einloggen ====
Tragen Sie die Daten wie im Screenshot zu sehen ein, bei "User name" ist statt abc12345 ihr Kürzel einzutragen, bei "Password" ihr AD-Kennwort wie im CIP-Pool.\\
Um sich Tipparbeit zu sparen, können Sie diese Einträge mit "Save..." abspeichern. Dann aber bitte vorher das "Password" Feld leeren.
Im nächsten Schritt möchte WinSCP sicher gehen, dass der Server auch der ist, für den er sich ausgibt. Wenn ihre Zeile bei "ssh-rsa" mit der im unteren Screenshot übereinstimmt, bestätigen Sie das Feld mit "Yes".
{{ :public:netz:netz_hps_2key.png?nolink |Die SSH-Key Sicherheitsabfrage von WinSCP}}
Wenn alles gut gegangen ist, sollte WinSCP nun das Hauptfenster zeigen:
{{ :public:netz:netz_hps_3loggedin.png?nolink |Das WinSCP-Hauptfenster}}
==== Hochladen ====
Navigieren Sie nun im linken Fensterteil zu dem Ordner, den Sie hochladen wollen; im rechten Teilfenster öffnen Sie den Ordner "html":
{{ :public:netz:netz_hps_4navigateto.png?nolink |Zum hochzuladenden Ordner navigiert}}
Markieren Sie die hochzuladenden Dateien & Ordner und kopieren Sie diese mit Klick auf "F5 Copy". Es öffnet sich ein Dialog, den es mit Klick auf "Copy" zu bestätigen gilt:
{{ :public:netz:netz_hps_5copy.png?nolink |Copy-Dialog}}
==== Fertigstellen ====
Das war es auch schon. Öffnen Sie mit einem Browser ihrer Wahl ihre Homepage, mit Link im Format \\
https://hps.hs-regensburg.de/~abc12345/ \\
Sofern nichts weiter im Link angegeben wird, wird zuerst die Datei index.html oder index.php angezeigt:
{{ :public:netz:netz_hps_6page.png?nolink |Hallo Welt-Homepage}}
====== Einfaches Verwalten der Datenbank ======
Zum Verwalten ihrer MySQL-Datenbank können Sie [[https://hps.hs-regensburg.de/adminer|adminer]] verwenden.
Loggen Sie sich dort mit ihrem DB-Benutzer, DB-Passwort und DB-Namen ein.\\
Sollten Sie das Datenbankpasswort nicht mehr kennen, können Sie sich ein Neues im [[https://hps.hs-regensburg.de/accmgr.php|Zugangsmanager]] erstellen.
{{ :public:netz:netz_hps_8adminer.png?nolink |}}
Bitte laden Sie keine eigene Tools zum Verwalten ihrer Datenbank hoch, da diese häufig als Einstiegspunkt für Angreifer dienen. Das vorinstallierte phpMyAdmin kann zentral gepflegt und gewartet werden.
====== Wie viel Speicher/Quota habe ich noch? ======
Verbinden Sie sich wie oben beschrieben mit dem Server. Wählen Sie dann im WinSCP-Hauptfenster den Menüpunkt "Commands / Open Terminal".\\
Geben Sie in die Zeile bei "Enter Command" ein:
quota -gls
Nach Klick auf "Execute" bekommen Sie die aktuelle Auslastung und ihr Speicherlimit angezeigt:
{{ :public:netz:netz_hps_7quota.png?nolink |Ausgabe des Quotabefehls}}
Dieser Befehl funktioniert natürlich auch in einer SSH-Session.
====== Verbinden mit SSH ======
Um selber Befehle auszuführen, können Sie sich mit einem SSH-Client wie [[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html|PuTTY]] verbinden. Tragen Sie im dortigen Loginfenster die gleichen Daten ein wie im SCP-Teil dieser Anleitung.
====== Fehler 403 bei nicht-PHP Dateien =======
Wenn Sie nach dem Installieren von PHP-Skripten (wie einem Forum) zwar auf die ''index.php'' kommen, jedoch bei ''style.css'' einen Fehler 403 erhalten, dann fehlen dem Apache-Webserver höchstwahrscheinlich die Rechte, die Dateien auszulesen.\\
Skripte werden als der Benutzer und Gruppe ausgeführt, zu der die Datei gehört.
Folgende Situation stellte sich nach Installation eines [[http://www.simplemachines.org/|SMF]]-Forums dar:
$ ls -l
-rw-r--r-- 1 abc12345 abc12345 14K Dec 22 17:12 index.php
(...)
drwx------ 4 abc12345 abc12345 4.0K May 30 11:08 Themes/
So war das Forum über die ''index.php'' erreichbar, das Stylesheet ''index.css'' unter ''Themes/'' jedoch nicht. Der Grund ist der Folgende:\\
*''index.php'' ist ein PHP-Skript und wird Benutzer/Gruppe ''abc12345'' gestartet, da dieser der Besitzer der Datei ist. Zugriff erlaubt, alles gut.
*''Themes/default/css/index.css'' ist kein PHP-Skript und wird als Webserver-Benutzer ''www-data'' geöffnet. Da auf ''Themes/'' nur ''abc12345'' das Recht hat, den Ordner zu öffnen, schlägt der Zugriff mit einem Fehler 403 fehl.
*Zur Abhilfe sollte man auf solche Ordner und Dateien ein Leserecht erteilen. Hierzu kann man folgenden Befehl verwenden:
find -type d -print0 | xargs -0 chmod -c 755 ; find -type f -print0 | xargs -0 chmod -c 644
Damit wird für alle Dateien und Ordner im aktuellen Verzeichnis das Schreibrecht für sich selbst und das Leserecht für andere eingetragen.
$ ls -l
-rw-r--r-- 1 abc12345 abc12345 14K Dec 22 17:12 index.php
(...)
drwxr-xr-x 4 abc12345 abc12345 4.0K May 30 11:08 Themes/
====== Gruppen-Dateirechte bei Spezialaccounts =======
Möchten mehrere Benutzer an einer Datei arbeiten (z.B. bei Spezialaccounts), so ist es hilfreich mit einer anderen ''umask'' zu arbeiten.
Damit bezeichnet man die Dateirechte, die beim Erstellen einer Datei oder eines Ordners standardmäßig vergeben werden.
Im Normalfall ist diese auf den Wert ''0022'' gesetzt, was zu folgenden Rechten führt:
$ touch test
$ ls -l test
-rw-r--r-- 1 abc12345 spezialaccount 0 Dec 10 15:25 test
Hier hat nur der Benutzer ''abc12345'' (-**rw-**r--r--), aber nicht die Gruppe ''spezialaccount'' (-rw-**r--**r--) Schreibrechte, was für das gemeinsame Arbeiten nicht ausreicht.
Beheben lässt sich das im Nachhinein mit ''chmod'':
$ chmod -Rc g+w test
mode of ‘test’ changed from 0644 (rw-r--r--) to 0664 (rw-rw-r--)
$ ls -l test
-rw-rw-r-- 1 abc12345 spezialaccount 0 Dec 10 15:25 test
Damit man das nicht immer wieder machen muss, empfiehlt es sich, eine andere ''umask'' zu setzen. Mit:
$ umask 0002
bekommt standardmäßig der Benutzer (-**rw-**rw-r--) und die Gruppe (-rw-**rw-**r--) Schreibrechte:
$ touch test2
$ ls -l test2
-rw-rw-r-- 1 abc12345 spezialaccount 0 Dec 10 15:30 test2
Im WinSCP setzt man dies im [[https://winscp.net/eng/docs/ui_transfer_custom|Transfer Settings Dialog]] im Bereich Upload Options -> Set Permissions.
Möchte man das neu erstellte Ordner automatisch die Berechtigung abc12345:spezialaccount erhalten, so muss das Sticky Bit gesetzt werden (auf jeden Unterordner):
sudo chmod 2775 /home/spezialusername