Introduction to Ushahidi
Ushahidi (meaning “testimony” in Swahili) was originally a website that was quickly developed to map reports of violence in Kenya after the post-election fallout at the beginning of 2008.
The new Ushahidi Engine incorporates the lessons learned from Kenya to create a platform that can be deployed by anyone to collect and visualize information, especially crisis information.
Platform-specific guides
This installation guide provides high-level instructions. If you would like more detailed step-by-step instructions, here are some more detailed platform-specific guides. Even if you're not installing on one of these platforms they may provide useful pointers.
System Requirements
- Server with Unicode support
- PHP version 5.2.3 or greater
- MySQL version 5.0 or greater
- An HTTP Server. Kohana, which Ushahidi is built upon, is known to work with the following servers: Apache 1.3+, Apache2.0+, lighttpd, and MS IIS
Required Extensions
The follwing is a list of PHP extensions that must be installed on your server in order for Ushahidi to run properly. NOTE: Most, if not all of these, are always in the new versions of PHP (which is required), you may want to can check phpinfo before worrying about researching how to install these:
- PCRE must be compiled with –enable-utf8 and –enable-unicode-properties for UTF-8 functions to work properly.
- iconv is required for UTF-8 transliteration.
- SPLis required for several core libraries
- mbstring which speeds up Kohana's UTF-8 functions.
Need to figure out what extensions you already have installed on your server? Here are instructions to do just that.
Preliminary Setup
Before installing Ushahidi you will need to give your server authority to write to certian files and folders. Please make sure the following files and folders are writable by your server:
- application/config/config.php
- application/config
- application/cache
- application/logs
- media/uploads
- .htaccess
The process of configuring file permissions is different for various opperating systems. Here are some helpful links about permissions for the Unix operating systems and Windows.
Installation Guide
Ushahidi can be installed manually or via the web installer. The easiest way to install Ushahidi is to use the web installer as it takes you through everything step by step.
Web Installer
- Upload the unpacked/unzipped Ushahidi files to your server.
- Make sure the appropriate files are writable by your web server (see “Preliminary Setup” above).
- Point your browser to the http://your-ushahidi-url/installerand follow the step by step instructions.
Manual Installation
- Upload the unpacked/unzipped Ushahidi files to your server.
- Create a database and note the connection credentials.
- Make sure the appropriate files are writable by your web server (see “Preliminary Setup” above).
- Copy or rename ./application/config/database.template.php to ./application/config/database.php.
- Edit database.php and provide it with your database credentials.
- Copy or rename ./application/config/config.template.php to application/config/config.php.
- Edit config.php and provide it with the appropriate values. The comments in the file will tell you exactly what to provide. In most cases, you won't need to change most of them.
- Create the appropriate tables into your database by executing the sql statements in the following file: ./sql/ushahidi.sql
- Browse to your site.
- Admin Area: http://your-ushahidi-url/admin
- User: admin
- Password: admin
Please note: There are still more settings and configurations that you will still need to complete in order to get your instance fully opporational. More information about these settings can be found at this article on our wiki.
Likely Errors if /admin doesn't work
Check URL rewriting is functioning, If you are getting 404 (not found) for /admin check .htaccess file exists. If you are running on IIS you will need to put rewrite rules into your web.config (assuming IIS 7+).
Online Resources
A simple guide on how to install Ushahidi by Antonius Wiriadjaja
How to use ushahidi This is where you will find information reqarding how to use your ushahidi instance.
Ushahidi in Spanish This is where you will find code translated into Spanish by the Cuidemos El Voto team
Ushahidi in Chinese This is where you will find code translated into Chinese by Suave Su.(Thank you Nathan Freitas for the heads up)
Setting up Ushahidi on BlueHost by Marc Maxson. Setup Ushahidi in 15 painless minutes using bluehost.com
Ushahidi Support Forum
Our support forum is the place to connect with the core developers and other users. It will be great to head over there to report or find support regarding using ushahidi.