-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall_instructions.html
363 lines (345 loc) · 15.4 KB
/
install_instructions.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
<html>
<head>
<meta name="description" content="OpenBiblio Library Automation System">
<title>OpenBiblio Install Instructions</title>
<style type="text/css">
.notice {
margin-left: 50px;
margin-right: 50px;
border: solid black 1px;
background: #ffaaaa;
padding: 4px;
}
.new {
margin-left: 50px;
margin-right: 50px;
border: solid black 1px;
background: #ffffaa;
padding: 4px;
}
h1 { border-bottom: solid black 1px }
th { text-align: right }
</style>
</head>
<body bgcolor="#ffffff" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" marginheight="0" marginwidth="0">
<div style="background: #bebdbe"><img src="images/obiblio_logo.gif" width="170" height="35" border="0"></div>
<div style="padding: 8px">
<h1>Contents:</h1>
<ul>
<li><a href="#releaseNotes">Release Notes</a></li>
<li><a href="#sysReq">System requirements</a></li>
<li><a href="#install">Install Instructions</a></li>
<li><a href="#update">Updating from a previous version of OpenBiblio</a></li>
</ul>
<a name="releaseNotes">
<h1>Release Notes:</h1>
</a>
<p>Version 0.7.1 is recommended for new installs and for updating older versions of OpenBiblio,
including all versions from <i>openbiblio.de</i>. The most important changes are:</p>
<ul>
<li>Updated to be compatible with MySQL 5.5.</li>
<li>Updated for PHP 5.3.x deprecated features.</li>
<li>Updated for PHP 5.4.0 backward incompatible changes.</li>
<li>Fixes for bugs in OpenBiblio features.</li>
<li>New and changed features: Check In shows hyperlinked member name (with Days Late and
outstanding Account Balance), Override Due Date, Renew All, Offline Circulation, Bibliography
Checkout History, Custom Copy Fields, Copy Barcode Number validation less restrictive and
optional, new search types Call Number and Keyword, OPAC search and view exclude nonpublic
fields, new parameters for reports Copy Search and Popular Bibliographies, new reports, new
layouts for media labels and member cards.</li>
</ul>
<p>See the <a href="ChangeLog">ChangeLog</a> for more details. Please understand that 0.7.0 never
was released officially, but we are still trying to following the version numbering convention
expressed at the release of 0.6.0. Some changes for 0.7.1 might appear as new features (not in
0.7.0), technically they are built on bugfixes.</p>
Update urgency:
<ul>
<li>Versions below 0.5.2: urgent. The deviant versions from <i>openbiblio.de</i> can now be
updated <a href="#update">automatically</a>.</li>
<li>0.5.2: urgency depends on required compatibility, bugfixes, new features and on trusting
staff users with the reports privilege.</li>
<li>0.6.0, 0.6.1: urgency depends on required compatibility, bugfixes and new features.</li>
<li>0.7.0: many fixes for new features, especially in Circulation.</li>
</ul>
Known limitations:
<ul>
<li>MARC is not stored perfectly in the database tables (issue 1, fixed in obiblio-10-wip).</li>
<li>The search process was designed to be easy for the end user, not to query large databases
efficiently - do not expect great performance when more than 20,000 MARC records with lots of
fields are imported.</li>
<li>UTF-8 multibyte characters: very limited support in reports and possibly issues with search
(issue 19).</li>
<li>If you have not updated to 64 bit PHP before some day in the year 2038: days late and late
fee not calculated, incorrect timestamp calculations for holds (issue 51).</li>
</ul>
<p>OpenBiblio test suite ran successfully on the following configurations:</p>
<blockquote>
<table>
<tr>
<th>Operating System:</th>
<td>Microsoft Windows 7</td>
<td>Ubuntu 9.04 (GNU/Linux)</td>
<td>Ubuntu 9.04 (GNU/Linux)</td>
</tr>
<tr>
<th>PHP Version:</th>
<td>5.4.0 RC4 VC9 <sup>EasyPHP</sup></td>
<td>5.3.1 <sup>XAMPP for Linux 173a</sup></td>
<td>4.3.9 <sup>XAMPP for Linux 149a</sup></td>
</tr>
<tr>
<th>Web Server:</th>
<td>Apache 2.2.21 VC9</td>
<td>Apache 2.2.14</td>
<td>Apache 2.0.52</td>
</tr>
<tr>
<th>MySql Version:</th>
<td>5.5.19</td>
<td>5.1.41</td>
<td>4.0.21</td>
</tr>
<tr>
<th>Browser:</th>
<td>Firefox 10.0.2<br>Internet Explorer 9.0.5</td>
<td>Firefox 3.6.27</td>
<td>Firefox 3.6.27</td>
</tr>
</table>
</blockquote>
</li>
</ul>
<a name="sysReq">
<h1>System requirements:</h1>
</a>
<ul>
<li>PHP version 4.2.0 or higher and a web server which supports it</li>
<li>MySQL version 4.0.12 or higher</li>
<li>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.</li>
</ul>
<div class="notice">
OpenBiblio 0.7.1 is still compatible with ancient versions of PHP and MySQL. Make sure to use versions that are updated for security.
</div>
<br>
<div class="new">
<strong>Commonly used scenarios for making a system meet the requirements:</strong>
<ul>
<li>Linux: add the required software using a "package manager".</li>
<li>Windows: for standalone use or testing purposes use a "WAMP" package like <a href="http://www.easyphp.org">EasyPHP</a>.</li>
<li>Handpick the required software: full procedure below.</li>
</ul>
Find more reading, tutorials, etc. in the documentation section of <a href="http://obiblio.sourceforge.net/">OpenBiblio's home</a>.
</div>
<a name="install">
<h1>Install Instructions:</h1>
</a>
<div class="new">
For systems that meet the requirements: jump to <a href="#step5">step 5 and finish the procedure.</a>
</div>
<br>
<div class="new">
When using <i>phpMyAdmin</i> for setting up the database:
<ul>
<li>Open the SQL query window.</li>
<li>Run the SQL commands from <a href="#step5">step 5</a> and step 6 in the procedure below.
The command is the part in <tt><b>bold</b></tt> directly after <tt>mysql></tt></li>
<li>Jump to <a href="#step8">step 8</a> and finish the procedure.</li>
</ul>
</div>
<h3>Procedure</h3>
<div class="notice">Steps 1-4: detail is out of date, but the basics are still valid.</div>
<ol>
<li>Install a web server such as <a href="http://httpd.apache.org/">Apache</a> 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.
</li>
<li>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
<a href="http://www.php.net/manual/en/install.apache2.php">Example 3-9. PHP and Apache 2.0 as Module</a>
in the <a href="http://www.php.net/manual/en/">PHP Manual</a> for more info on how to install PHP
as a module.
<p>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.
<p>Example php.ini directive:
<pre>session.save_path = d:\PHP\sessiondata</pre>
<p>See section <a href="http://www.php.net/manual/en/ref.session.php">XCIII. Session handling functions</a>
in the PHP manual for more details on PHP sessions.
</li>
<li>Install the MySQL database from <a href="http://www.mysql.com/">http://www.mysql.com/</a>.
Get familiar with starting and stopping your MySQL Server. See
<a href="http://www.mysql.com/doc/W/i/Win95_start.html">Starting MySQL on Windows 95 or
Windows 98</a> for more information.<br><br>
If you are running NT or Windows 2000, setup MySQL as a service so it starts whenever the machine
powers up. See <a href="http://www.mysql.com/doc/N/T/NT_start.html">Starting MySQL on Windows NT or Windows 2000</a>
for more information on starting MySQL as a service.<br><br>
If you are running Linux, MySQL should be packaged with your Linux installation and will start when
you start Linux.
</li>
<li>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.
<blockquote><pre>
C:\><b>c:\mysql\bin\mysql -uroot mysql</b>
Enter password: <b>*********</b>
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> <b>show databases;</b>
+--------------+
| Database |
+--------------+
| mysql |
+--------------+
6 rows in set (0.00 sec)
mysql> <b>exit</b>
Bye
C:\>
</pre></blockquote>
</li>
<a name="step5">
<li>Create an OpenBiblio database. To do this, log into MySQL with your admin account
and run the following SQL command.
<blockquote><pre>
mysql> <b>create database OpenBiblio /*!40100 default character set latin1 */;</b>
</pre>
<div class="new">
<strong>New:</strong> The conditional comment <b><tt>/* ... */ </tt></b>is executed on MySQL 4.1.0 or higher and specifies
<tt>latin1</tt> as the default database character set for the database created.
</div>
<br>
<div class="notice">
You might discover issues when the database character set is not <tt>latin1</tt>.
<table border="1">
<th>database character set</th>
<th>tab Admin: Library Settings, field <i>HTML Charset</i></th>
<th>comment</th>
<tr>
<td>latin1<br><i>(recommended)</i></td>
<td>iso-8859-1<br><i>(initial value, set by install)</i></td>
<td>No issues.</i></td>
</tr>
<tr>
<td>utf8</td>
<td>UTF-8</td>
<td>Issues for multibyte characters
<ul>
<li>Search?</li>
<li>PDF layouts</li>
</ul>
</td>
</tr>
</table></div>
<br>
<div class="new">
<strong>New:</strong> When OpenBiblio HTML Charset setting is UTF-8, PDF layouts can display some
multibyte characters correctly by converting to single byte.
</div>
<br>
To check to make sure the OpenBiblio database was created properly, run the following command.
<pre>
mysql> <b>show databases;</b>
+--------------+
| Database |
+--------------+
| mysql |
| OpenBiblio |
+--------------+
</pre></blockquote>
</li>
</a>
<a name="step6">
<li>Create an OpenBiblio database user. To do this, login to MySQL under the admin userid
and run the following SQL command, substituting <i>obiblio_user</i> and <i>obiblio_password</i> with the userid and password of your choice.
<blockquote><table><tr>
<td><pre>mysql>
-> </pre></td>
<td><pre><b>grant all privileges on OpenBiblio.* to <i>obiblio_user</i>@localhost</b></b>
<b>identified by '<i>obiblio_password</i>';</pre></td>
</tr></table></blockquote>
</li>
</a>
<li>Verify your OpenBiblio database and user by logging into the new MySQL database under the new user.
<blockquote><pre>
<b>C:\mysql\bin\mysql -u<i>obiblio_user</i> -p<i>obiblio_password</i> OpenBiblio</b>
</pre></blockquote>
</li>
<a name="step8">
<li>Copy the openbiblio directory and all of its contents into your web server's htdocs
root or any subdirectory within the htdocs root.
</li></a>
<a name="step9">
<li>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.
</li></a>
<li>Create the OpenBiblio database tables. To do this run the install php script
located at <a href="http://localhost/openbiblio/install/index.php">http://localhost/openbiblio/install/index.php</a>,
assuming you placed the openbiblio directory in the root htdocs directory.
</li>
<li><strong>For security:</strong> Remove the openbiblio/install directory completely
to prevent unauthorized use of install or upgrade tools.</li>
<li><strong>For security:</strong> Verify that the <tt>display_errors</tt> setting in php.ini is 'Off'
to prevent unintended information disclosure.</li>
<li>Access your new library automation system at <a href="http://localhost/openbiblio/index.php">http://localhost/openbiblio/index.php</a>,
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.
</li>
</ol>
<br>
<a name="update">
<h1>Updating from a previous version of OpenBiblio:</h1>
<div class="new"><strong>NEW:</strong> Updates from <i>openbiblio.de</i> versions
(e.g. 0.5.1.7) can now be performed automatically.<br><br>
The following patches that were used in <i>openbiblio.de</i> are not incorporated in version 0.7.1:<br>
<a href="http://sourceforge.net/tracker/?func=detail&aid=1158176&group_id=50071&atid=458476">Membership-Feature</a><br>
<blockquote>
Tested: field <tt>member.mbrshipend</tt> does not interfere with 0.7.1 and data remains untouched.<br>
Untested suggestion: apply the patch to your 0.7.1 updated OpenBiblio.
</blockquote>
<a href="http://sourceforge.net/tracker/?func=detail&aid=1118359&group_id=50071&atid=458476">Add Browse by Subject</a><br>
<a href="http://sourceforge.net/tracker/?func=detail&aid=1117840&group_id=50071&atid=458476">Add picture to Bibliography</a><br>
<a href="http://www.flos-inc.com/projects/index.php#main">New Member Screen</a> (barcode entered automatically for new members)
</div>
<br>
<ol>
<li>Rename your old openbiblio installation directory
so that you don't lose its contents. We'll call the old directory openbiblio-old.
</li>
<li>Copy the new openbiblio directory and all of its contents into the directory where the old openbiblio installation was.
</li>
<li>Copy the database_constants.php file from the openbiblio-old directory into the new
openbiblio directory, replacing the database_constants.php file there.
</li>
<li>Backup your database. See your MySQL documentation for instructions.
</li>
<li>Update your OpenBiblio database tables by using the conversion tool located at
<a href="http://localhost/openbiblio/install/index.php">http://localhost/openbiblio/install/index.php</a>,
assuming you placed the openbiblio directory in the root htdocs directory.
</li>
<li><strong>For security:</strong> Remove the openbiblio/install directory completely
to prevent unauthorized use of install or upgrade tools.</li>
<li><strong>For security:</strong> Verify that the <tt>display_errors</tt> setting in php.ini is 'Off'
to prevent unintended information disclosure.</li>
</ol>
<div class="notice">
<strong>Updates from 0.7.0:</strong> 0.7.1 is a bugfix release to 0.7.0: it can run without
upgrading the database. However, step 5 is recommended. This cleans unused entries from the
database and lifts some restrictions.
</div>
</a>
</div>
</body>
</html>