== Lernprojekte: System == Die Lernprojekte gab es schon in t29v5, also seit einer ganzen Weile. Die Lernprojekte befinden sich in einem Verzeichnis, und zwar [[https://labs.technikum29.de/browser/technikum29%20Website/de/lernprojekte|/de/lernprojekte]]. Jedes Lernprojekt ist in einem eigenen Unterverzeichnis. Die Benutzerregelung geschieht über `.htaccess`-Files und ist damit Apache-gebunden. Zum dynamischen Bearbeiten von Zugriffsrechten und Passwörtern gibt es seit geraumer Zeit den ''admin''-Ordner, der ebenso als Lernprojekt auftritt. Zu jedem Lernprojekt gibt es ein gleichlautenden Apache-Benutzer, der durch die Reglementierung der `.htaccess`-Files in den Lernprojekte-Ordnern neben dem ''admin''-Benutzer der einzige ist, der Zugriff hat. Damit sind individuelle Passwörter möglich. Damit das ''admin''-Modul funktioniert, braucht der PHP-ausführende Benutzer (idR. `www-data`) Schreibzugriff auf alle `.htaccess` und `.htpasswd`-Files. Das sind: {{{ $ find -iname ".htaccess" ./computer/.htaccess ./speichermedien/.htaccess ./admin/.htaccess ./pianola/.htaccess ./pianola/Funktionserklaerung-Pianola/.htaccess ./.htaccess ./nipkow/.htaccess ./rundfunk/.htaccess ./fernsehen/.htaccess ./telegrafie/.htaccess }}} sowie die `AuthUserFile /etc/apache2/passwords/lernprojekte.passwd`. Das muss bei der Installation berücksichtigt werden. Auf dem t29-ng-Server ist das so gelöst: {{{ sven@vs1734:/srv/www/technikum29.de/de/lernprojekte$ id svnd uid=1005(svnd) gid=1005(svn) groups=1005(svn) sven@vs1734:/srv/www/technikum29.de/de/lernprojekte$ id www-data uid=33(www-data) gid=33(www-data) groups=33(www-data),1005(svn) sven@vs1734:/srv/www/technikum29.de/de/lernprojekte$ ls -l .htaccess -rw-rw-r-- 1 svnd svn 519 Sep 18 21:40 .htaccess }}} == Links == * http://www.technikum29.de/de/lernprojekte/ * http://www.technikum29.de/de/lernprojekte/admin/ - Admin