Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Ushahidi is a platform that allows information collection, visualization and interactive mapping, allowing anyone to submit information through text messaging using a mobile phone, email or web form.

This branch is 0 commits ahead and 0 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 application
Octocat-spinner-32 installer
Octocat-spinner-32 media
Octocat-spinner-32 modules
Octocat-spinner-32 plugins
Octocat-spinner-32 sql
Octocat-spinner-32 system
Octocat-spinner-32 tests
Octocat-spinner-32 themes
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .htaccess
Octocat-spinner-32 CHANGELOG.txt
Octocat-spinner-32 License.txt
Octocat-spinner-32 README.markdown
Octocat-spinner-32 favicon.ico
Octocat-spinner-32 index.php
Octocat-spinner-32 maintenance_off.php
Octocat-spinner-32 readme.html
README.markdown

Ushahidi Platform

The Ushahidi Platform is an open source web application for information collection, vizualisation and interactive mapping. It allows people to collect and share their own stories using various mediums such as SMS, Web Forms, Email or Twitter. For more information about the platform and use cases (case studies) visit: http://www.ushahidi.com

System Requirements

To install the platform on your computer/server, the target system must meet the following requirements:

  • PHP version 5.2.3 or greater
  • MySQL version 5.0 or greater
  • An HTTP Server. Kohana, which Ushahidi is built on, is known to work with the following web servers:
    • Apache 1.3+
    • Apache 2.0+
    • lighttpd
    • Microsoft Internet Information Server (MS IIS)
  • Unicode support in the operating system

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: Need to figure out what extensions you already have installed on your server? Here are instructions to do just that: http://jontangerine.com/silo/php/phpinfo/

Optional Server Requirements

To use Ushahidi's "Clean URLS" feature on an Apache Web Server, you will need the mod_rewrite module and the ability to use local .htaccess files.

Installing mod_rewrite

Debian/Ubuntu flavours of Linux
sudo a2enmod rewrite
CentOS, OS X and Windows

Make sure the following line is NOT commented in your httpd.conf

LoadModule rewrite_module

Additional Configuration

To check if local .htaccess files are allowed, verify that the "AllowOverride" directive in your Apache config (for the web server directory in which you have installed Ushahidi) has been set to "All" i.e.:

<Directory [your-document-root-directory]>
    ...
    AllowOverride All
    ...
</Directory>

NOTE:

  • Clean URLs means that the URLs of your deployment will not have the 'index.php' prefix
  • You MUST restart your Apache web server after making the changes outlined above

Installation

  • Download and extract Ushahidi

    You can obtain the official release of the software from the download site. Alternatively, you can obtain the release running the latest version of the from GitHub - the files are available in .zip and .tar.gz

    To unzip/extract the archive on a typical Unix/Linux command line:

    tar -xvf Ushahidi_Web-xxxx.tar.gz
    

    or in the case of a zip file:

    unzip Ushahidi_Web-xxxx.zip
    

    This will create a new directory Ushahidi_Web-xxxx containing all the Ushahidi platform files and directories - Move the contents of this directory into a directory within your webserver's document root or your public HTML directory.

  • Ensure the following directories are writable (i.e. have their permission values set to 777)

    • application/config
    • application/cache
    • application/logs
    • media/uploads
    • .htaccess

    On Unix/Linux, you can change the permissions as follows:

    cd path-to-webserver-document-root-directory
    chmod -R 777 application/config
    chmod -R 777 application/cache
    chmod -R 777 application/logs
    chmod -R 777 media/uploads
    chmod 777 .htaccess
    

    NOTE: The process of configuring file permissions is different for various operating systems. Here are some helpful links about permissions for the Windows (http://support.microsoft.com/kb/308419) and Unix (http://www.washington.edu/computing/unix/permissions.html) operating systems.

  • Create the Ushahidi database

    Ushahidi stores all its information in a database. You must therefore create this database in order to install Ushahidi. This is done as follows:

    mysqladmin -u 'username' -p create 'databasename'
    

    MySQL will prompt for the password for the database password and then create the initial database files. Next, you must log in and set the database access rights:

    mysql -u 'username' -p
    

    Again, you will be prompted for the 'username' database password. At the MySQL prompt, enter the following command:

    GRANT SELECT, INSERT, DELETE, UPDATE, CREATE, DROP, ALTER, INDEX on database.* 
    TO 'username'@'localhost' IDENTIFIED BY 'password';
    

    Where:

    • 'databasename' is the name of your database
    • 'username@localhost' is the name of your MySQL account
    • 'password' is the password required for that username

    NOTE: Your account must have all the privileges listed above in order to run Ushahidi on your webserver.

  • Run the install script

    To run the install script, point your browser to the base url of your website: (e.g. http://www.example.com).

    You will be guided through a series of screens to set up the database and site settings depending on the installation method you choose (Basic or Advanced)

Additional Information

For further references and documentation, head over to our wiki (http://wiki.ushahidi.com). Also, we encourage you to drop by our forums (http://forums.ushahidi.com/) if you have any additional questions or concerns.

Something went wrong with that request. Please try again.