Skip to content
Snippets Groups Projects
INSTALL.md 4.52 KiB
Newer Older
Sauf indiqué, cette procédure prends en compte par défaut les distributions GNU/Linux Ubuntu et Debian


# Paquets nécessaires:

##  Ubuntu
Prérequis: l'OPAC nécessite PHP 5.4 qui n'est pas encore par défaut dans Ubuntu. Il est nécessaire de déclarer le dépôt qui suit la dernière version de PHP comme ceci:

```
apt-get install python-software-properties
add-apt-repository ppa:ondrej/php5
apt-get update
apt-get install php5 php5-gd php5-imagick php5-xdebug php-pear php5-mysql php5-xhprof graphviz apache2 mysql-server libapache2-mod-php5 subversion php5-mcrypt
apt-get install php5 php5-gd php5-imagick php5-xdebug php-pear php5-mysql php5-xhprof graphviz apache2 mysql-server libapache2-mod-php5 subversion php5-mcrypt
```		

## ArchLinux
```
yaourt -S php php-gd php-imagick xdebug php-pear apache mysql php-apache php-xhprof graphviz subversion
```

## CentOS
```
rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm
llaffont's avatar
llaffont committed
yum install php54w php54w-gd php54w-pear php54w-mysql php54w-pecl-xdebug php54w-xml php54w-soap php54w-mbstring
llaffont's avatar
llaffont committed
You need to build Imagick extension from scratch


# Configuration PEAR (en compte root / sudo):
```
  pear config-set auto_discover 1
  pear install pear.phpunit.de/PHPUnit
  pear install pear.phpunit.de/PHPUnit_Story
  pear install pear.phpunit.de/PHP_Invoker
  pear install pear.phpunit.de/PHP_Timer
  pear install pear.phpunit.de/PHP_TokenStream
  pear install pear.phpunit.de/Text_Template
  pear install pear.phpunit.de/DbUnit
  pear install pear.phpunit.de/PHPUnit_Selenium
  pear install phpunit/PHPUnit_TestListener_XHProf
  pear install pear.phpunit.de/Diff
  pear install pear.phpunit.de/Exporter
  pear install pear.phpunit.de/Version
```

# Récupération des sources
## En subversion: 
Laurent's avatar
Laurent committed

```
svn checkout http://afi-forge.afi-sa.fr/svn/opacce/trunk opacce
svn checkout http://afi-forge.afi-sa.fr/svn/opacce/ZendFramework-1.6.2
```
Laurent's avatar
Laurent committed

Laurent's avatar
Laurent committed

```
cd /var/www
git clone git@git.afi-sa.fr:afi/opacce.git opacce
git clone git@git.afi-sa.fr:afi/storm.git storm
git clone git@git.afi-sa.fr:afi/zf.git ZendFramework-1.6.2
```
L'arborescence devrait être quelque chose comme:
Laurent's avatar
Laurent committed

```
/var/www/ZendFramework-1.6.2
/var/www/opacce
/var/www/storm
ln -s /var/www/storm/src/Storm /var/www/opacce/library/Storm
ln -s /var/www/storm/tests/Storm /var/www/opacce/tests/Storm
```

# Configuration Apache / PHP:

## Activez les modules :
llaffont's avatar
llaffont committed
a2enmod headers rewrite php5
Modifiez /etc/httpd/conf/http.conf et ajoutez la ligne: 
Laurent's avatar
Laurent committed

```
LoadModule php5_module modules/libphp5.so
```

Désactivez le module negotiation qui pose problème avec Zend Framework sur les urls index/index:

```  
a2dismod negotiation
```

## Configurer PHP

Dans /etc/php5/apache2/php.ini (ArchLinux: /etc/php/php.ini), configurer les variables suivantes:
```
post_max_size = 10M
upload_max_filesize = 10M
error_reporting  =  E_ALL & ~E_NOTICE & ~E_DEPRECATED
```

Activez les extensions suivantes: calendar, curl, gd, gettext, iconv, mcrypt, mysql, pdo_mysql, openssl, soap, imagick


## Configurer Apache

Dans la conf Apache, supprimer l'option Indexes (listing des fichiers) et autoriser les .htaccess: 
Laurent's avatar
Laurent committed

llaffont's avatar
llaffont committed
<Directory /var/www/>
  Options FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>
llaffont's avatar
llaffont committed
<Directory /var/www/>
  Options FollowSymLinks
  AllowOverride All
  Require all granted
</Directory>
```


# Droits sur le répertoire temporaire
llaffont's avatar
llaffont committed
chmod -R 777 opacce/temp
llaffont's avatar
llaffont committed
Modifier /etc/mysql/my.cnf et ajouter dans la section et forcer l'indexation fulltext à partir de 1 lettre dans la section [mysqld]
Laurent's avatar
Laurent committed

llaffont's avatar
llaffont committed
ft_min_word_len = 1
llaffont's avatar
llaffont committed
Redémarrer mysql.


Notes: si des problèmes d'encodage de caractères sont visibles dans Cosmogramme, il est possible de forcer l'UTF8 comme ceci:

```
llaffont's avatar
llaffont committed
skip-character-set-client-handshake
character-set-server=utf8
```

Se connecter à mysql et importer le schema

```
mysql -uroot -ppass
mysql> create database opac;
mysql> connect opac;
mysql> source opacce/scripts/opac2.sql;
```

# Configuration OPAC
  
Dans le répertoire opacce, copiez et configurez

```
llaffont's avatar
llaffont committed
cp config.ini.default config.ini
touch local.php
```

# Configuration Cosmogramme
  
  Dans le répertoire cosmogramme, copiez config.ref.php vers config.php et configurez.

  Allez sur http://localhost/opacce/cosmogramme

  Connectez vous avec le compte admin/achanger et exécutez la mise à niveau de la base de données


# Se connecter à l'OPAC:
  
  Utiliser le compte admin/achanger


# Pour lancer les tests de l'OPAC:
```
llaffont's avatar
llaffont committed
cd opacce/tests/
phpunit