Anleitungen

Installationsanleitung

Index:

Erscheinungsbemerkungen

Version 0.8.1 wird für neue Installationen und zum updaten von älteren Openbiblio-Versionen empfohlen, da hiermit die Sicherheit verbessert wird. Die wichtigsten Änderungen sind im ChangeLog zu finden.

Update-Dringlichkeiten: Bekannte Probleme:

OpenBiblio Testläufe arbeiteten erfolgreich in den folgenden Konfigurationen:

Betriebssystem: Debian GNU/Linux 10 Debian GNU/Linux 9.13 Ubuntu 14.04 (GNU/Linux)
PHP Version: 8.2.15 7.4.15 7.1.13
Web Server: Apache 2.4.38 Apache 2.4.25 Apache 2.4.7
MySql Version: MAriaDB 10.6.16 MAriaDB 10.2.37 5.5.59

Systemvoraussetzungen


Oft genutzte Szenarien um ihr System den Anforderungen gerecht zu machen

Installationsanleitung

Wenn ihr System schon den Anforderungen entspricht: machen sie weiter bei Schritt 9 und weiter.

Wenn Sie phpMyAdmin zum Einstellen ihrer Datenbank nutzen:

Prozedur

Schritte 1-8: Die Details sind eventuell etwas veraltet, aber die Grundlagen sind trotzdem gültig.
  1. Um ihr System für OpenBiblio zu nutzen müssen Sie einen WebServer, PHP und MySQL installiert haben. Wenn Sie dieses nicht schon haben wird empfohlen unter Linux die Pakete per Paketmanager zu installieren und für die Installation unter Windows XAMPP zu nutzen. (ich danke Christopher Dagleish für den Hinweis auf XAMPP :-))
  2. Unter Windows: Laden Sie die für ihr System benötigte Version von XAMPP herunter, dabei reicht theoretisch die Lite-Version, aber die volle Version wird trotzdem empfohlen (diese bietet auch regelmäßige Updates...). Installieren Sie anschließend das heruntergeladene XAMPP (die Installation wird auf der Seite der entsprechenden XAMPP-Version auf deutsch genau beschrieben und daher hier nicht weiter erklärt, aber lesen Sie bitte am besten alles dort durch :-)). Starten sie nun XAMPP, nach der dort beschriebenen Methode und schon haben Sie Apache, PHP und MySQL laufen. Fahren Sie nun mit der Einrichtung von OpenBiblio unter Punkt 7. fort!
  3. Die folgenden Punkte 4-6 müssen Sie nur durchführen, falls Sie XAMPP nicht installiert haben bzw. nicht konnten (oder es aus welchen Gründen auch immer nicht lief):
  4. Installieren Sie einen Webserver wie Apache, der kompatibel mit PHP ist. Wenn sie Apache benutzen, machen Sie sich damit bekannt, wie man den Server startet und anhält. Eine Verknüpfung mit dieser Datei können sie einfach in ihr Autostartverzeichniss hinzufügen. Wenn Sie Linux benutzen sollte Apache normalerweise bei ihrer Linuxdistribution schon dabei sein und sich mit Linux automatisch starten.
  5. Fügen Sie PHP zu ihrem Webserver als CGI oder als Module hinzu. Wenn Sie Apache 2.x benutzen, ist es stark empfohlen PHP als Modul statt als CGI zu installieren. Schauen sie auch Beispiel 3-9. PHP and Apache 2.0 as Module (derzeit leider nur in englisch) im PHP Handbuch an, um mehr über die Installation von PHP zu erfahren.

    OpenBiblio benutzt Sessiondaten. Deshalb müssen Sie aufpassen, daß in PHP sessions angestellt sind. Passen Sie auf, daß sie ein Verzeichniss für Sessiondaten auf ihrem Server erstellen und den session.save_path in der php.ini-Datei festlegen. Die Standard php.ini setzt den session.save_path nach "/tmp". Deshalb müssen sie ein Verzeichniss c:/tmp (in Windows) erstellen. Trotz dessen sollten sie ein beschreibenderes Verzeichniss benutzen, erstellen sie ein sessiondata-Verzeichniss im PHP-Verzeichniss und ändern sie ihre php.ini-Datei entsprechend

    Beispiel php.ini Anweisung:

    session.save_path = d:\PHP\sessiondata

    Schauen Sie auch in die Sektion Session Funktionen im PHP Handbuch für mehr Details über PHP-Sessions.

  6. Installieren Sie die MySQL Datenbank von http://www.mysql.com/. Machen Sie sich mit dem starten und stoppen des Servers vertraut.

    Wenn Sie Linux benutzen, sollte MySQL ebenfalls schon dabei sein und mit Linux zusammen starten.
  7. Die folgenden Punkte beschreiben das Einrichten von OpenBiblio und müssen von allen ausgeführt werden, die OpenBiblio das erste Mal installieren (egal ob sie XAMPP nutzen oder Apache, PHP, MySQL anders installiert haben):
  8. Machen Sie sich vertraut mit dem einloggen unter MySQL aus dem DOS Promt heraus (oder vom Linuxprompt). Am besten nutzen Sie folgende Befehlsequenz.
    C:\>c:\mysql\bin\mysql -uroot mysql
    Enter password: *********
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 8 to server version: 3.23.26-beta
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer
    
    mysql> show databases;
    +--------------+
    | Database     |
    +--------------+
    | mysql        |
    +--------------+
    6 rows in set (0.00 sec)
    
    mysql> exit
    Bye
    
    C:\>
    
  9. Erstellen Sie die OpenBiblio Datenbank. Um dies zu tun, loggen Sie sich in MySQL mit dem AdminAccount ein (wie oben beschrieben) und führen sie folgendes SQL Kommando aus.
    mysql> create database OpenBiblio /*!40100 default character set utf8 */;
    
    Neu: Der bedingte Kommentar /* ... */ wird in MySQL 4.1.0 oder höher ausgeführt und spezifiziert utf8_general_ci als Standard-Datenbank Zeichensatz für die Datenbank, die erstellt wird.

    In alten Anleitungen wurde hier immer latin1 empfohlen, auf modernen System sollte aber nur noch utf8 verwendet werden, da hier die Eingabe von Sonderzeichen deutlich flexibler ist.
    Datenbank Zeichensatz Registerkarte Admin: Bibliothekseinstellunegn, Feld HTML Zeichensatz Kommentar
    latin1 iso-8859-1 Probleme bei der Darstellung von Umlauten etc.
    utf8
    (empfohlen)
    UTF-8
    (Initialwert, von der Installation gesetzt)
    PDF Layouts machen noch Probleme, wird noch geändert

    Um zu überprüfen, ob die Datenbank wirklich angelegt wurde führen Sie folgendes Kommando aus.
    mysql> show databases;
    +--------------+
    | Database     |
    +--------------+
    | mysql        |
    | OpenBiblio   |
    +--------------+
    
  10. Erstellen Sie den OpenBiblio Datenbank-Benutzer. Um dies zu tun loggen sie sich in MySQL mit dem admin-Account ein und führen Sie folgendes Kommando aus, wobei Sie obiblio_user und obiblio_password mit einem Usernamen und einem Passwort ihrer Wahl ersetzen.
    mysql> grant all privileges on OpenBiblio.* to obiblio_user@localhost identified by 'obiblio_password';
  11. Prüfen Sie ihre Datenbank und den Benutzer, indem Sie sich als Benutzer einloggen.
    C:\mysql\bin\mysql -uobiblio_user -pobiblio_password OpenBiblio
    
  12. Kopieren Sie das openbiblio-Verzeichnis und seinen gesamten Inhalt in das htdocs-Verzeichnis oder einen Unterordner ihres htdocs-Verzeichnis ihres Webservers.
  13. Bearbeiten sie die Datei database_constants.php (befindet sich im Hauptverzeichniss von openbiblio) mit einem Texteditor ihrer Wahl. Ändern sie den Username und das Passwort auf den neu erstellten MySQL-Benutzer und dessen Passwort (den sie im vorigen Schritt erstellt haben).
  14. Bearbeiten sie die Datei global_constants.php (befindet sich im Verzeichnis shared von openbiblio) mit einem Texteditor ihrer Wahl. Ändern sie folgende zwei Konstanten nach Ihrer Wahl:
    --> OBIB_UPGRADE_KEY
    --> OBIB_PWD_FORGOTTEN_KEY
  15. Erstellen sie die OpenBiblio Tabellen. Um dies zu machen führen Sie das Install-Skript aus, welches Sie mit http://localhost/openbiblio/install/index.php aufrufen können, wobei ich davon ausgehe, daß sie das openbiblio-Verzeichniss in das htdocs-Verzeichniss ihres Webservers kopiert haben.
  16. Für die Sicherheit: Prüfen Sie, dass die display_errors Einstellung in der php.ini ist 'Off' um zu verhindern, dass ungeprüfte Informationen angezeigt werden.
  17. Für die Sicherheit: Wechseln Sie in das openbiblio-Verzeichnis, ändern Sie sie Gruppe der Datei database_constants.php auf die Apache-Gruppe (meist www-data) und ändern Sie die Rechte auf 440. (chgrp www-data database_constants.php; chmod 440 database_constants.php)
  18. Greifen Sie auf ihre neue Bibliothekssoftware unter http://localhost/openbiblio/index.html zu, wobei ich davon ausgehe, daß sie das openbiblio-Verzeichniss in das htdocs-Verzeichniss ihres Webservers kopiert haben. Geben Sie zum einloggen "admin" als Username und als Passwort "Administrator#1" ein, sobald sie sich einloggen müssen. Sie können das Admin-Passwort ändern in der "Admin"-Registerkarte unter Mitarbeiter, wo Sie auch neue Mitarbeiter hinzufügen können.
  19. Unter admin --> Bibliothekseinstellung können systemreleavante Einstellungen vorgenommen werden, u.a. auch, ob die Bibliotheksnutzer per Online auf ihren persönlichen Account zugreifen dürfen oder nicht.
  20. Um den Mailversand für bspw. Passwort-Vergessen-Funktion oder Willkommensmeldung nutzen zu können, müssen Sie als Administrator unter admin --> Mail-Nachrichten bei den jeweiligen Nachrichten eine gültige E-Mail-Adresse als Absender hinterlegen. Diese kann sich bei den einzelnen Nachrichten auch unterscheiden.
  21. Die Passwort-Vergessen-Funktion kann unter admin --> Mail-Einstellungen aktiviert werden. Dabei können Sie entscheiden, ob entweder die Benutzernummer/-name oder die E-Mail-Adresse angegeben werden müssen oder beides.
  22. Der Mailversand kann entweder über die php-Mail-Funktion oder über PHPMailer geschehen, soweit die Systemvoraussetzungen gegeben sind und die nötigen Einstellungen vorgenommen wurden.
  23. Ab der Openbiblio-Version 0.8.1 sind zwei Bibliotheken mit eingebunden:
    --> PHPMailer (URL: https://github.com/PHPMailer/PHPMailer)
    --> TinyMCE-Text-Editor (URL: https://www.tiny.cloud/docs/tinymce/latest/php-projects/)
    Diese sollten ohne weiteres funktionieren, soweit die technischen Systemvoraussetzungen Ihres Servers gegeben sind. Sollte es Schwierigkeiten geben, lesen Sie bitte die Informationen über obige URLs durch.

Einrichten des Userlogin:

Generell muss entschieden werden, ob die Openbiblio als reines Verwaltungsprogramm ohne Online-Login-Zugang für die Benutzer sein soll oder diese einen Online-Login-Zugang erhalten sollen. Die Einstellung dazu ist zu finden über das Register "Admin" unter dem Link "Bibliothekseinstellungen". Im Verlauf der Aktualisierung auf 0.8.1 kann diese Einstellung entsprechend vorgenommen werden.

Das Benutzer-Login wird ab der Version 0.8.1 geändert. Das Passwort der Benutzer (member) wird nun in der DB-Tabelle member verschlüsselt hinterlegt. Bisher angelegte Passwörter unter dem Mitgliederfeld 'secret' werden bei der Aktualisierung automatisch kopiert und verschlüsselt in die DB-Tabelle member gesetzt. Die nicht mehr benötigten 'secret'-Felder in den DB-Tabellen member_fields und member_fields_dm werden danach gelöscht.

Außerdem wird der Benutzer bei zu häufiger Fehleingabe der Zugangsdaten für eine bestimmte Zeit gesperrt.
Bei der Aktualiserung auf 0.8.1 können während dem Update die Anzahl der Fehlversuche und die Sperrzeit gesetzt werden. Ansonsten können diese Einstellungen jederseit über das Register "Admin" unter dem Link "Bibliothekseinstellungen" geändert werden.

Soweit in den Bibliothekseinstellungen der Online-Login-Zugriff für Benutzer erlaubt wurde,

  1. steht dem Benutzer unter http://localhost/openbiblio/opac/index.html der Button zum Benutzer-Login zur Verfügung.
  2. muss beim Anlegen des neuen Benutzers das Kennwort angelegt werden.
  3. kann sich der Benutzer über den Button "Benutzer-Login" oder über den Link http://localhost/openbiblio/opac/loginform.php unter Angabe der Benutzernummer und des Kennwortes einloggen. Über sein Benutzerkonto kann der Benutzer seine Medien verlängern, Vorbestellungen vornehmen und das Kennwort ändern.

Update einer früheren Version:

  1. Benennen Sie ihr altes openbiblio-Verzeichniss um, so dass der Inhalt nicht verloren geht. Wir nennen hier das alte Verzeichnis openbiblio-old.
  2. Kopieren Sie das neue openbiblio-Verzeichnis und seinen Inhalt in ein Verzeichnis, das benannt werden sollte, wie das alte vorher hieß.
  3. Kopieren Sie die Datei database_constants.php aus dem openbiblio-old Verzeichnis in das neue openbiblio-Verzeichnis, indem Sie die Datei database_constants.php darin ersetzen.
  4. Erstellen sie unbedingt ein Backup ihrer Datenbank. Lesen Sie dazu die MySQL Dokumentation für eine Anleitung. (mysqldump benutzen)
  5. Zum Updaten wird der Upgrade-Key benötigt, welcher unter der Konstante OBIB_UPGRADE_KEY in der Datei ../shared/global_constants.php hinterlegt ist.
  6. Updaten Sie die OpenBiblio-Datenbank-Tabellen, indem Sie das Konversions-Tool nutzen, welches sie unter http://localhost/openbiblio/install/index.php finden, wobei ich davon ausgehe, daß sie das openbiblio-Verzeichniss in das htdocs-Verzeichniss ihres Webservers kopiert haben. Wenn es auf einem entfernten Server installiert ist, ist auch der erste Teil der Adresse unterschiedlich. Wenn die Tabellen schon OK sind dann meldet dies das Tool entsprechend zurück.
  7. Für die Sicherheit: Das Verzeichniss openbiblio/install kann komplett nach der Installation bzw. Update gelöscht werden. Allerdings ist dies ab Version 0.8.1 nicht zwingend mehr notwendig, da der Aktualisierungsprozess über den Upgrade-Key abgesichert ist.
  8. Für die Sicherheit: Prüfen Sie, dass die display_errors Einstellung in der php.ini ist 'Off' um zu verhindern, dass ungeprüfte Informationen angezeigt werden.
  9. Für die Sicherheit: Wechseln Sie in das openbiblio-Verzeichnis, ändern Sie sie Gruppe der Datei database_constants.php auf die Apache-Gruppe (meist www-data) und ändern Sie die Rechte auf 440. (chgrp www-data database_constants.php; chmod 440 database_constants.php)
Updates von 0.7.0: 0.8 ist ein Bugfix für 0.7.x: es funktioniert ohne, dass sie die Datenbank upgraden. Trotz alledem wird Schritt 5 empfohlen. Dieses bereinigt ungenutzte Einträge aus der Datenbank und entfernt einige Restriktionen.*
Updates von 0.7.1 oder höher: 0.8 ist ein Bugfix für 0.7.x: es funktioniert ohne, dass sie die Datenbank upgraden.*
Updates von 0.8 oder höher: 0.8.1 ist eine Erweiterung und benötigt ein Upgrade der Datenbank. Es beinhaltet folgende Änderungen: * Wenn Sie die neue Präsenzfunktion (ab 0.8) in ihrer bestehenden Datenbank nutzen wollen müssen Sie folgenden Befehl in ihrer Datenbank ausführen: insert into biblio_status_dm values ('pre','Präsenz','N');