ZBKB (ZazzyBob Knowledge Base) is a fully featured Knowledge Base application written using PHP for it's frontend. The project is designed to run on an Apache webserver, with at least PHP 4.0 loaded. ZBKB uses PostgreSQL for its database backend.
Here are some key features of "ZBKB":
· User Accounts - Each user has their own login account used to access the knowledge base, which can be tailored as required by the use of various permissions.
· Write/Read/Admin permissions currently implemented
· Other permissions are planned
· Administrative Functionality - The administrative users have full control over the database. They can add and remove users, categories and sub-categories, as well as change passwords, etc.
· User Functionality - Users can be set up read-only, whereby they can only search and query the knowledge base, or with write permission they can contribute to the knowledge base.
· Security - Uses encrypted passwords and PHP sessions for increased security. All attempted user logins are logged.
· Apache (Tested with version 1.3.27)
· PHP (Tested with PHP 4 -loaded into Apache as module)
· PostgreSQL (Tested with version 7.3.2)
1. Unpack the tarball to a temporary location, e.g.
$ cd /tmp
$ zcat zbkb-0.1.tar.gz | tar xvf -
2. Edit the "setup_db" script to suit your needs.
* _DB_NAME specifies the database name. The default of "zbkb" should be used - do not change this!
* A variable that you'll almost certainly need to change is _WWW_ROOT. This should be set to wherever you store your php files. If PHP has been configured on a SuSE 8.2 system, for example, the files can be dropped straight into /srv/www/htdocs
3. Execute the following command as a user with admin rights to PostgreSQL
$ createdb zbkb
4. Add the "wwwrun" user (Linux) or "nobody" user (Windows). This is the user that the httpd process runs as. Again, execute as a user with admin rights to PostgreSQL
$ createuser wwwrun
NOTE: You *must* answer yes to both questions - wwwrun must be a PostgreSQL "superuser".
5. Execute the following as a PostgreSQL admin
$ psql -c "GRANT ALL ON DATABASE zbkb TO wwwrun;" zbkb
6. Run the setup_db script (make executable if necessary). May need running as root (i.e. whoever has write access to the _WWW_ROOT directory).
# chmod u+x ./setup_db
7. All tables will be created, and files will be copied to the directory specified.
8. If the files are in your usual DocumentRoot, you can now just browse to "http://localhost/login.php" and log in as root. The credentials are:
All credentials are case sensitive. As soon as you log in as root, change your password! Instructions on how to do this are contained within the user guide.
9. If you have any problems, contact me (e-mail address below) You can now delete the temporary files, if that's what floats your boat.