Contents:
Release Notes:
OpenBiblio 0.5.2 fixes a number of longstanding bugs and introduces several new features.
IMPORTANT: There is an outstanding security issue in the reports system that
allows a staff member with report privileges to execute arbitrary SQL commands on the database
server. This means that any staff member with report privileges is equivalent to a staff member with
all privileges. This issue will be fixed in the next release (hopefully within a few weeks), but until then,
only grant reports privileges to highly trusted staff.
Notable bug fixes
- Several security issues, some severe, have been fixed. All users are advised to upgrade.
- All known incompatibilities with newer MySQL versions have been fixed.
Notable new functionality
- More flexible checkout privilege system
- User-definable custom fields for members and items (per material type)
- Hold expiration
- Renewal functionality
See the newly introduced ChangeLog for more details.
OpenBiblio version 0.5.1 test scenarios ran successfully on the following configurations:
| Operating System: |
| PHP Version: |
| Web Server: |
| MySql Version: |
| Browser: |
Install Instructions (New Systems):
Requirements
- PHP version 4.2.0 or higher and a web server which supports it
- MySQL version 3.23 or higher
- A relatively modern web browser. Versions of Internet Explorer before 6.0 may
have problems with PDF files generated by OpenBiblio. Users of Netscape 4.x and earlier
may suffer from appearance problems.
Procedure
- Install a web server such as Apache that is
compatible with PHP. If you install Apache, get familiar with starting
and stopping your Apache Web Server. If you are running Windows 95 or Windows 98
there will be "Start Apache" and "Stop Apache" icons that will help you start
and stop your web server. You may want to consider adding the "Start Apache"
icon to your startup folder. If you are running NT or Windows 2000 you can add Apache as a
service which will be running, even if you are logged off. If you are running Linux
your Apache server should be packaged with your Linux installation and will start when
you start Linux.
- Add PHP to your web server as a CGI or a module. If you are using Apache 2.0, I would highly
recommend that you install PHP as a module instead of a cgi application. In my experience the
Apache PHP module performed over 4 times faster than the cgi PHP. See
Example 3-9. PHP and Apache 2.0 as Module
in the PHP Manual for more info on how to install PHP
as a module.
OpenBiblio uses session data. Therefore, you will need to make sure PHP sessions are turned on.
Be sure to create a directory for your session data on your server and specify the session.save_path
in your php.ini file. The default php.ini sets session.save_path to "/tmp". Therefore, you have
to create a directory called c:/tmp (for Windows) users. However, I usually create a more descriptive name
inside my PHP directory and then change my php.ini file to match it.
Example php.ini directive:
session.save_path = d:\PHP\sessiondata
See section XCIII. Session handling functions
in the PHP manual for more details on PHP sessions.
- Install the MySQL database from http://www.mysql.com/.
Get familiar with starting and stopping your MySQL Server. See
Starting MySQL on Windows 95 or
Windows 98 for more information.
If you are running NT or Windows 2000, setup MySQL as a service so it starts whenever the machine
powers up. See Starting MySQL on Windows NT or Windows 2000
for more information on starting MySQL as a service.
If you are running Linux, MySQL should be packaged with your Linux installation and will start when
you start Linux.
- Get familiar with logging into MySQL with your admin account within a DOS prompt window. You can use the following command sequence as a test.
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:\>
- Create an OpenBiblio database. To do this, log into MySQL with your admin account
and run the following SQL command.
mysql> create database OpenBiblio;
To check to make sure the OpenBiblio database was created properly, run the following command.
mysql> show databases;
+--------------+
| Database |
+--------------+
| mysql |
| OpenBiblio |
+--------------+
- Create an OpenBiblio database user. To do this, login to MySQL under the admin userid
and run the following SQL command, substituting obiblio_user and obiblio_password with the userid and password of your choice.
mysql> grant all privileges on OpenBiblio.* to obiblio_user@localhost
-> identified by 'obiblio_password';
- Verify your OpenBiblio database and user by logging into the new MySQL database under the new user.
C:\mysql\bin\mysql -uobiblio_user -pobiblio_password OpenBiblio
- Copy the openbiblio directory and all of its contents into your web server's htdocs
root or any subdirectory within the htdocs root.
- Edit the database_constants.php file (located in the main openbiblio directory)
with the text editor of your choice.
Change the username and password to match the new MySQL user and password that you
created in the previous steps.
- Create the OpenBiblio database tables. To do this run the install php script
located at http://localhost/openbiblio/install/index.php,
assuming you placed the openbiblio directory in the root htdocs directory.
- For security: Remove the openbiblio/install directory completely
to prevent unauthorized use of install or upgrade tools.
- For security: Verify that the display_errors setting in php.ini is 'Off'
to prevent unintended information disclosure.
- Access your new library automation system at http://localhost/openbiblio/index.php,
assuming you placed the openbiblio directory in the root htdocs directory. Enter
"admin" for both the userid and password whenever you are prompted to signon. You can
change the admin password from the "Admin" tab -> staff list, where you can also add
more library staff members.
Updating from a previous version of OpenBiblio:
IMPORTANT: Updates from OpenBiblio.de versions
(e.g. 0.5.1.7) must be performed manually at the moment. The automatic upgrade
script does not know how to handle the database format differences.
- Rename your old openbiblio installation directory
so that you don't lose its contents. We'll call the old directory openbiblio-old.
- Copy the new openbiblio directory and all of its contents into the directory where the old openbiblio installation was.
- Copy the database_constants.php file from the openbiblio-old directory into the new
openbiblio directory, replacing the database_constants.php file there.
- Backup your database. See your MySQL documentation for instructions.
- Update your OpenBiblio database tables by using the conversion tool located at
http://localhost/openbiblio/install/index.php,
assuming you placed the openbiblio directory in the root htdocs directory.
- For security: Remove the openbiblio/install directory completely
to prevent unauthorized use of install or upgrade tools.
- For security: Verify that the display_errors setting in php.ini is 'Off'
to prevent unintended information disclosure.