WikiPP: High Performance Wiki Engine
Wikipp is a high performance wiki engine based on CppCMS technology
Requirements
Before you install WikiPP you need to install
- CppCMS Framework - version 0.999.0 and above
- CppDB Library
- Discount Markdown Library
- Syntax Highligher --- recommended but not mandatory.
Installation of WikiPP
Download wikipp-X.Y.Z.tar.bz2 and extract it:
tar -xjvf wikipp-X.Y.Z.tar.gz cd wikipp-X.Y.Z
If you are using trunk version:
svn co https://svn.code.sf.net/p/cppcms/code/wikipp/trunk wikipp cd wikipp
and then create a build directory
mkdir build
Configure the wiki build system
cmake ..
Or of you want to install to ordinary /usr
path instead
of /usr/local
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
Then run
make
And as super user
make install
Configuration of Wiki
I assume that you had installed wikipp to /usr/local directory (default for configure script). Otherwise, you should update absolute paths given in this documentation
Database
You can find DB configuration scripts under /usr/local/share/wikipp/sql directory, use them to create a database
If you use MySQL:
First of all, create database, let's call it "wikipp".
create database wikipp;
Then create all required tables running:
mysql -u username --password=secret wikipp <mysql.sql
If you use Sqlite3
Create database, and make it accessible to process that would run wikipp:
sqlite3 /var/wikipp/wikipp.db <sqlite3.sql
Make sure that /var/wikipp/wikipp.db is writable by the web server.
If you use PostgreSQL
createdb wikipp psql wikipp <postgresql.sql
WikiPP configuration
Take a sample configuration file placed under /usr/local/shared/wikipp/sample_config.js create a copy and edit it.
First create your new, unique private key for session management. Run
cppcms_make_key --hmac sha1 --cbc aes
Or if your cppcms library was build without libgcrypt and openssl:
cppcms_make_key --hmac sha1
Update the private keys in the configuration file.
REMEMBER THESE ARE YOUR PRIVATE KEYS, KEEP THEM IN SECRET
Configure connection string under
wikipp.connection_string
. Don't forget to define@pool_size
connection string property to enable connection pooling.Refer to CppDB manual for exact options.
Configure your web server according this manual.
Note, the wikipp media files installed into
/usr/local/share/wikipp/media
. Make sure that you have configured valid alias to this location and thewikipp.media
has correct value assigned according to the location of the files relatively the the web servers document root.Make sure that
localization.messages.messages
andviews.paths
points to correct path:Locale dictionaries:
"localization" : { "messages" : { "messages" : [ "/usr/local/share/locale"]
Views path:
"views" : { "paths" : [ "/usr/local/lib/wikipp" ],