2008-08-02 13:13:21 +00:00
|
|
|
# Quick installation instruction
|
|
|
|
|
2008-11-13 07:52:56 +00:00
|
|
|
The installation of InDefero is composed of 2 parts, first the
|
|
|
|
installation of the [Pluf framework](http://www.pluf.org) and second,
|
|
|
|
the installation of InDefero by itself.
|
|
|
|
|
2008-11-26 20:34:47 +00:00
|
|
|
## Recommended Layout of the Files
|
|
|
|
|
|
|
|
If your server document root is in `/var/www` a good thing is to keep
|
|
|
|
the number of files under the `/var/www` folder to its minimum. So,
|
|
|
|
you should create a `/home/www` folder in which we are going to
|
|
|
|
install all but the files which need to be available under the
|
|
|
|
document root.
|
|
|
|
|
|
|
|
/home/www/pluf/src/
|
|
|
|
/home/www/pluf/src/Pluf.php
|
|
|
|
/home/www/pluf/src/migrate.php
|
|
|
|
/home/www/indefero/src
|
|
|
|
/home/www/indefero/www
|
|
|
|
/home/www/indefero/www/index.php
|
|
|
|
/home/www/indefero/www/media
|
|
|
|
|
|
|
|
The you need to link the `media` and `index.php` files into your
|
|
|
|
docroot.
|
|
|
|
|
|
|
|
$ cd /var/www
|
|
|
|
$ ln -s /home/www/indefero/www/index.php
|
|
|
|
$ ln -s /home/www/indefero/www/media
|
|
|
|
|
2008-11-13 07:52:56 +00:00
|
|
|
## Installation of Pluf
|
|
|
|
|
2008-08-02 13:13:21 +00:00
|
|
|
* Checkout the trunk of [Pluf](http://www.pluf.org).
|
2008-11-13 07:52:56 +00:00
|
|
|
* Install the `Mail` and `Mail_mime` classes from [PEAR](http://pear.php.net). You must use the `--alldeps` flag when installing these modules:
|
|
|
|
|
|
|
|
$ sudo pear install --alldeps Mail
|
|
|
|
$ sudo pear install --alldeps Mail_mime
|
|
|
|
|
2008-11-26 20:34:47 +00:00
|
|
|
The Pluf installation folder is the folder containing the file `Pluf.php`.
|
2008-11-13 07:52:56 +00:00
|
|
|
|
|
|
|
## Installation of InDefero
|
|
|
|
|
|
|
|
The installation is composed of the following steps:
|
|
|
|
|
|
|
|
* Get the InDefero archive.
|
|
|
|
* Configure it correctly.
|
|
|
|
* Installation the database with the `migrate.php` script.
|
|
|
|
* Bootstrap the application with a `bootstrap.php` script.
|
|
|
|
|
|
|
|
Here is the step-by-step installation procedure:
|
|
|
|
|
|
|
|
* Extract the InDefero archive somewhere.
|
|
|
|
* The InDefero installation folder is the folder containing this file INSTALL.mdtext.
|
2008-08-02 13:13:21 +00:00
|
|
|
* Make a copy of `src/IDF/conf/idf.php-dist` as `src/IDF/conf/idf.php`.
|
|
|
|
* Update the idf.php file to match your system.
|
2008-11-24 09:50:37 +00:00
|
|
|
* Open a terminal/shell and go into the `src` folder in the InDefero installation folder.
|
2008-11-26 20:34:47 +00:00
|
|
|
|
|
|
|
$ cd /home/www/indefero/src
|
|
|
|
|
|
|
|
* Run `php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -i -d -u` to test the installation of the tables.
|
|
|
|
* Run `php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -i -d` to really install the tables.
|
2008-12-01 12:48:39 +00:00
|
|
|
* Create a bootstrap file to create the admin user for example `www/bootstrap.php`. Do not forget to update the second line with your path to Pluf:
|
2008-08-02 13:13:21 +00:00
|
|
|
|
|
|
|
<?php
|
2008-11-26 20:34:47 +00:00
|
|
|
set_include_path(get_include_path().PATH_SEPARATOR.dirname(__FILE__).'/home/www/indefero/src');
|
|
|
|
set_include_path(get_include_path().PATH_SEPARATOR.'/home/www/pluf/src');
|
2008-08-02 13:13:21 +00:00
|
|
|
require 'Pluf.php';
|
2008-11-26 20:34:47 +00:00
|
|
|
Pluf::start(dirname(__FILE__).'/home/www/indefero/src/IDF/conf/idf.php');
|
2008-08-02 13:13:21 +00:00
|
|
|
Pluf_Dispatcher::loadControllers(Pluf::f('idf_views'));
|
|
|
|
|
|
|
|
$user = new Pluf_User();
|
|
|
|
$user->first_name = 'John';
|
2008-11-26 20:34:47 +00:00
|
|
|
$user->last_name = 'Doe'; // Required!
|
2008-08-02 13:13:21 +00:00
|
|
|
$user->login = 'doe';
|
|
|
|
$user->email = 'doe@example.com';
|
|
|
|
$user->password = 'yourpassword'; // the password is salted/hashed
|
|
|
|
// in the database, so do not worry :)
|
|
|
|
$user->administrator = true;
|
|
|
|
$user->active = true;
|
|
|
|
$user->create();
|
|
|
|
print "Bootstrap ok\n";
|
|
|
|
?>
|
|
|
|
|
2008-11-13 07:52:56 +00:00
|
|
|
* Run `php www/bootstrap.php`.
|
|
|
|
* Remove the `www/bootstrap.php` file.
|
2008-11-26 20:34:47 +00:00
|
|
|
* Open the `www/index.php` file and ensure that the path to Pluf and
|
|
|
|
Indefero are correctly set for your configuration.
|
2008-12-01 12:48:39 +00:00
|
|
|
* Now you can login with this user into the interface.
|
|
|
|
* Click on the Administer link on top and create your first project.
|
2008-08-02 13:13:21 +00:00
|
|
|
|
2008-11-27 10:23:38 +00:00
|
|
|
## Upgrade InDefero
|
|
|
|
|
|
|
|
To upgrade:
|
|
|
|
|
|
|
|
* Make a backup of your data, including the database.
|
|
|
|
* Extract the new archive on top of the current one.
|
|
|
|
* Update your version of Pluf.
|
|
|
|
* Check that the path in the `index.php` are still good.
|
|
|
|
* Upgrade the database with:
|
|
|
|
|
|
|
|
$ php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -d -u
|
|
|
|
$ php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -d
|
|
|
|
|
2008-11-11 10:40:29 +00:00
|
|
|
## For the Apache Webserver Users
|
|
|
|
|
|
|
|
If you are using [Apache](http://httpd.apache.org/) for your webserver
|
|
|
|
and want to have nice URLs like `http://yourdomain.com/p/yourproject/`
|
|
|
|
and not `http://yourdomain.com/index.php/p/yourproject/` you can use
|
|
|
|
the following `.htaccess` file to be put in the same folder of the
|
|
|
|
`www/index.php` file.
|
|
|
|
|
|
|
|
RewriteEngine On
|
|
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
|
|
RewriteRule ^(.*) /index.php/$1
|
|
|
|
|
|
|
|
|
2008-11-26 20:34:47 +00:00
|
|
|
## For the Gentoo users
|
|
|
|
|
|
|
|
If you get the error:
|
|
|
|
|
|
|
|
T_CHARACTER Use of undefined constant T_CHARACTER - assumed 'T_CHARACTER'"
|
|
|
|
|
|
|
|
you need to compile PHP with the "tokenizer" flag.
|
|
|
|
|
2008-11-26 21:08:12 +00:00
|
|
|
## For People with open_basedir restriction error
|
|
|
|
|
|
|
|
If you get an error like:
|
|
|
|
|
|
|
|
file_get_contents(): open_basedir restriction in effect.
|
|
|
|
File(/etc/mime.types) is not within the
|
|
|
|
allowed path(s): (/srv/http/:/home/:/tmp/:/usr/share/pear/)
|
|
|
|
|
|
|
|
Just copy the file `/etc/mime.types` into the folder `/home` and put
|
|
|
|
this in your configuration file:
|
|
|
|
|
|
|
|
$cfg['idf_mimetypes_db'] = '/home/mime.types';
|
|
|
|
|