Installer sf-active sur debian ou knoppix

1. Installation de l'environnement

Vous allez avoir besoin de ces programmes :

cvs (si vous t\xE9l\xE9chargez sf-active via le cvs)
apache
php4 (ou version plus r\xE9cente)
mysql-server
php4-gd
php4-cgi
php4-mysql

Pour les t\xE9l\xE9charger ces programmes tapez cette commande :

apt-get install cvs

Pour t\xE9l\xE9charger sf-active par cvs tapez cette commande :

cvs -z3 -d:pserver:anonymous@cvs.codecoop.org:/cvsroot/sf-active co -r sfactive_v0_9_4 sf-active
ou
cvs -d:pserver:anonymous@cvs.codecoop.org:/cvsroot/sf-active co sf-active

Apr\xE8s cela un dossier sf-active appara\xEEtra dans le r\xE9pertoire de votre utilisateur. (/home/votre_utilisateur/sf-active/)

Cr\xE9ez un nouveau dossier dans /home au nom de sf-active :

mkdir /home/sf-active

Ensuite, copiez/collez (en root) dans ce nouveau dossier le contenu t\xE9l\xE9charg\xE9 par cvs :

cp -R /home/votre_utilisateur/sf-active/sf-active/* /home/sf-active

Si tout vas bien vous devriez voir apara\xEEtre 4 dossiers dans /home/sf-active :

sitename
shared
install
CVS (mais celui-ci n'est pas n\xE9cessaire au fonctionnement du site)

Renommez sitename par le nom de votre site :

mv /home/sf-active/sitename /home/sf-active/nom_de_votre_site

Chownez les tout les dossiers pour qu'il soit modifiable par votre serveur apache:

chown -R www-data:www-data /home/sf-active

Ensuite chmodez les fichiers et dossiers en tapant :

find /home/sf-active/ -type f -exec chmod 644 '{}' ';'
find /home/sf-active/ -type d -exec chmod 755 '{}' ';'

Puis de mani\xE8re individuelle tapez cette commandes pour chacun des r\xE9pertoires ci-dessous :

find r\xE9pertoire -type f -exec chmod 666 '{}' ';'

/home/sf-active/nom_de_votre_site/local/cache
/home/sf-active/nom_de_votre_site/local/include
/home/sf-active/nom_de_votre_site/local/templates
/home/sf-active/nom_de_votre_site/website/uploads
/home/sf-active/nom_de_votre_site/website/news
/home/sf-active/nom_de_votre_site/website/im*
/home/sf-active/nom_de_votre_site/website/themes
/home/sf-active/nom_de_votre_site/website/features
/home/sf-active/nom_de_votre_site/website/syn
/home/sf-active/shared/session

Ensuite cette autre commande pour les m\xEAmes r\xE9pertoires :

find r\xE9pertoire -type d -exec chmod 777 '{}' ';'

/!\ Attention car la premi\xE8re configuration n'est pas s\xE9curis\xE9e, elle peut convenir si vous faites de simples tests afin de voir si tout est fonctionnel, sinon la solution la plus s\xFBre consiste \xE0 faire ceci :

chown -R votre_utilisateur:www-data /home/sf-active
find /home/sf-active/ -type f -exec chmod 664 '{}' ';'
find /home/sf-active/ -type d -exec chmod 775 '{}' ';'

2. Cr\xE9er la base de donn\xE9e mysql

Pour des raisons de s\xE9curit\xE9, vous devez d'abord d\xE9finir un mot de passe root pour mysql car il n'en a pas lors de son installation:

mysqladmin -u root password 'votre_mot_de_passe_root_mysql'

Puis cr\xE9ez un un utilisateur au m\xEAme nom que votre site :

mysqladmin -u root -pvotre_mot_de_passe_root_mysql create nom_de_votre_site

Loggez-vous avec l'utilisateur root de mysql :

mysql -u root -pvotre_mot_de_passe_root_mysql

Il vous faut ensuite garantir le droit d'acc\xE8s \xE0 votre nouvel utilisateur sur la base de donn\xE9e que nous allons cr\xE9er, cela en mettant un nouveau mot de passe :

grant all on nom_de_votre_site.* to nom_de_votre_site@localhost identified by "mot_de_passe_pour_votre_bd";

Quittez mysql :

exit

Allez dans le r\xE9pertoire o\xF9 se situe vos fichiers de la base de donn\xE9e :

cd /home/sf-active/install

Et tapez ces 2 commandes :

mysql -u nom_de_votre_site -pmot_de_passe_pour_votre_bd nom_de_votre_site < mysql_db.sql
mysql -u nom_de_votre_site -pmot_de_passe_pour_votre_bd nom_de_votre_site < mysql_db_sample_data.sql

3. Configurations

Apache:

Ajoutez ces lignes dans la section virtualhost (souvent en bas) dans le fichier /etc/apache/httpd.conf

<VirtualHost ip_de_votre_serveur (ou localhost pour un test en local)>
ServerName ip_de_votre_serveur (ou localhost pour un test en local)
DocumentRoot /home/sf-active/nom_de_votre_site/website
SetEnv SITE_NAME nom_de_votre_site
</VirtualHost>

V\xE9rifiez qu'index.php est choisi comme fichier \xE0 prendre par d\xE9faut par votre serveur apache :

<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.htm index.shtml index.cgi
</IfModule>

Assurez-vous aussi que ces lignes existent :

AddType application/x-httpd-php .php .php3 .php4
AddType application/x-httpd-php-source .phps

Et que l'utilisateur et le groupe d'apache est bien www-data :

User www-data
Group www-data

S'assurer \xE9galement que ces 3 lignes existent dans le fichier /etc/apache/modules.conf et les d\xE9commenter si elles le sont en retirant le # devant :

LoadModule env_module /usr/lib/apache/1.3/mod_env.so
LoadModule setenvif_module /usr/lib/apache/1.3/mod_setenvif.so
LoadModule php4_module /usr/lib/apache/1.3/libphp4.so

Chercher la ligne Alias /images/ /usr/share/images/ et mettre un # devant (un repertoire images existe dans l'arborescence de sf-active)

Php:

Dans /etc/php4/apache/php.ini section "Path and Directories"

Modifiez la ligne :
include_path = ".:/php/includes"
par celle-ci
include_path = ".:/php/includes/:/home/sf-active/"

Sf-active

Allez dans le fichier /home/sf-active/nom_de_votre_site/local/config/sfactive.cfg et modifiez ces lignes :

// Database
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'nom_de_votre_site');
define('DB_PASSWORD', 'mot_de_passe_pour_votre_bd');
define('DB_DATABASE', 'nom_de_votre_site');
define('DB_VENDOR', 'mysql');
...
// Main Path
define('SF_BASE_PATH', '/home/sf-active');
define('SF_INSTALL_PATH', SF_BASE_PATH . '/nom_de_votre_site');
...
// Urls
define('SF_ROOT_URL', 'ip_de_votre_serveur (ou localhost pour un test en local)');

(Notez que ce fichier sert \xE0 configurer la plupart des fonction de sf-active mais nous n'entrerons pas dans les d\xE9tails ici).

Il vous faudra \xE9galement modifier le fichier /home/sf-active/shared/global.cfg

$server_root = "/home/sf-active";
...
if ($site_name)
{
switch ($site_name)
{
case "nom_de_votre_site":
$config_dir = $server_root . "/nom_de_votre_site/local/config";
$time_diff = 0;
break;
}
} else
{
$config_dir = $server_root . "/nom_de_votre_site/local/config";
$time_diff = 0;
}

Vous devez red\xE9marrer votre serveur apache afin qu'il prenne en compte la nouvelle configuration :

apachectl restart

Voil\xE0, pour acc\xE9der \xE0 votre site fra\xEEchement install\xE9, vous n'avez plus qu'\xE0 taper http://ip_de_votre_serveur ou http://localhost si configur\xE9 pour fonctionner localement

Enjoy :)

PS: pour des informations compl\xE9mentaires sur le fonctionnement de sf-active et sa configuration : http://sfactive.indymedia.org/docs/

-- TurlututU - 31 Dec 2004
Topic revision: r3 - 31 Aug 2005, ThierrY
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback