AviGNU - Mot-clé - PHP-FPMGroupe d'utilisateurs de logiciels libres du Grand Avignon2024-01-02T17:40:01+01:00Administrateururn:md5:8ed776652564792dba453bac492a5a6cDotclearInstallation de Dotclear sous openSUSE (bis)urn:md5:f6023a45ebe404bff4a933a411f5d8ab2015-01-19T11:32:00+01:002015-01-20T05:26:29+01:00Olivier DuchateauDocumentationDotclearFastCGIHowtoMariaDBNginxopenSUSEPHPPHP-FPM<p>Il y a quelques années, j'avais écrit un <a href="http://avignu.tuxfamily.org/index.php?post/2011/08/13/Installation-de-Dotclear-en-local%2C-sous-openSUSE">billet</a> sur l'installation de <a href="http://fr.dotclear.org/">Dotclear</a> en local.</p>
<p>Nous allons donc revoir la procédure de A à Z, en changeant cette fois-ci de serveur Web, et de système de base de données.</p>
<p>Les prérequis sont :</p>
<ul>
<li>Un serveur HTTP</li>
<li>Une base de données</li>
<li>PHP >= 5.2</li>
</ul> <h3>Le serveur HTTP</h3>
<p>J'ai décidé d'utiliser le serveur <a href="http://nginx.org/">Nginx</a> (prononcez « <em>engine-x</em> »). Sur le wiki, vous trouverez la <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:opensuse:nginx">procédure</a> pour l'installer.</p>
<p>Pour une question de facilité, j'ai choisi de mettre en place l'équivalent de la directive <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:nginx#equivalent_de_la_directive_userdir_d_apache">UserDir</a> <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2015/01/19/Installation-de-Dotclear-sous-openSUSE-%28bis%29#wiki-footnote-1" id="rev-wiki-footnote-1">1</a>]</sup> d'<a href="http://httpd.apache.org/">Apache</a>.</p>
<p>On lance le serveur avec cette commande :</p>
<pre># systemctl start nginx
</pre>
<p>On peut tester les adresses suivantes http://localhost/ et http://localhost/~olivier/ <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2015/01/19/Installation-de-Dotclear-sous-openSUSE-%28bis%29#wiki-footnote-2" id="rev-wiki-footnote-2">2</a>]</sup>.</p>
<pre>% curl -I http://localhost/
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 19 Jan 2015 05:20:47 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.6.1
% curl -I http://localhost/~olivier/
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 19 Jan 2015 05:23:24 GMT
Content-Type: text/html
Connection: keep-alive
</pre>
<p>Tout semble fonctionnel, on peut passer à l'étape suivante, qui consiste à installer un gestionnaire de base de données.</p>
<h3>MariaDB comme gestionnaire de base de données</h3>
<p>Rien de bien particulier, on l'installe de cette manière :</p>
<pre># zypper in mariadb mariadb-tools
</pre>
<p>Je suis passé par l'utilitaire <code>mysql_secure_installation</code> pour la configuration (on aurait pu utiliser <code>mysqladmin</code>). Elle est décrite sur une <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:mysql">page du wiki</a>.</p>
<p>On lance ce nouveau service, grâce à la commande suivante :</p>
<pre># systemctl start mysql
</pre>
<p>Il faut conserver les identifiants de connexion à la base de données, ils seront nécessaire lors de l'installation de Dotclear.</p>
<p>Maintenant, on passe au langage <abbr title="PHP: Hypertext Preprocessor">PHP</abbr>.</p>
<h3>PHP-FPM</h3>
<p>Là encore rien de compliquer.</p>
<pre># zypper in --recommends php5 php5-bcmath php5-bz2 php5-fpm php5-gd php5-gettext php5-mbstring php5-mcrypt php5-mysql php5-pear php5-sockets php5-xmlrpc php5-xsl php5-zlib
</pre>
<p>Sur le wiki, une page explique la <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:opensuse:install_php-fpm">procédure</a> pour configurer PHP-FPM sous openSUSE.</p>
<p>On lance le service :</p>
<pre># systemctl start php-fpm
</pre>
<h3>Dotclear</h3>
<p>Les modules PHP indispensables sont :</p>
<ul>
<li><code>php5-gd</code></li>
<li><code>php5-mbstring</code></li>
<li><code>php5-mysql</code> (on a configuré cette base de données)</li>
<li><code>php5-xsl</code></li>
<li><code>php5-xmlreader</code> / <code>php5-xmlwritter</code></li>
<li><code>php5-iconv</code></li>
</ul>
<p>Après avoir téléchargé la dernière archive <code>latest.tar.gz</code>, on la décompresse dans le dossier <code>public_html/</code>.</p>
<pre>% tar -xzf latest.tar.gz -C ~/public_html
</pre>
<p>J'ai dû modifier l'accès en écriture les dossiers <code>inc/</code> (sinon l'assistant refuse de se lancer), <code>cache/</code>, et <code>public/</code>.</p>
<pre>% cd ~/public_html/dotclear/
% chmod o+w inc/
% chmod o+w cache/
% chmod o+w public/
</pre>
<p>Les différentes étapes en images de l'installation sont regroupées <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:dotclear">ici</a>.</p>
<p>Désormais, on peut supprimer le dossier <code>admin/install/</code>.</p>
<pre>cd ~/public_html/dotclear/admin/
rm -Rf install/
</pre>
<p><a href="http://avignu.tuxfamily.org/news-custom/public/screenshots/dotclear-2.7.3.png" title="Capture d'écran du premier billet de DotClear"><img src="http://avignu.tuxfamily.org/news-custom/public/screenshots/.dotclear-2.7.3_m.png" alt="dotclear-2.7.3.png" title="Capture d'écran du premier billet de DotClear" /></a></p>
<div class="footnotes"><h4>Notes</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2015/01/19/Installation-de-Dotclear-sous-openSUSE-%28bis%29#rev-wiki-footnote-1" id="wiki-footnote-1">1</a>] Une configuration plus complète est disponible sur le <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:nginx">wiki</a>.</p>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2015/01/19/Installation-de-Dotclear-sous-openSUSE-%28bis%29#rev-wiki-footnote-2" id="wiki-footnote-2">2</a>] C'est l'utilisateur sur cet ordinateur.</p></div>