Outils pour utilisateurs

Outils du site


www_dotclear

Ceci est une ancienne révision du document !


Wordpress

Un peu surpris par la misére de l'editeur “wiki” de dotclear (inadapté pour bloguer du “code” comme avec dokuwiki), je m'essaye a WordPress.

Liens:

Installation

/var/www

$ su
# cd /var/www
# wget http://fr.wordpress.org/wordpress-3.3.1-fr_FR.tar.gz
# tar xvzf wordpress-3.3.1-fr_FR.tar.gz
# chown -R www-data: wordpress
# cd wordpress

Si on a configuré apache (qu'on verra plus loin), on a droit a ce message:

Votre installation PHP ne dispose pas de MySQL. Extension requise pour WordPress.

MySQL

# aptitude install mysql-server php5-mysql
# mysql -u root -p

mysql> create database wordpress;
Query OK, 1 row affected (0.00 sec)

GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost" IDENTIFIED BY "<MOT_DE_PASSE>";
Query OK, 0 rows affected (0.00 sec)

flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit

On aura générer le “<MOT_DE_PASSE>” avec pwgen par exemple…

apache2

Tips

DotClear2

DotClear2 - Methode A

Plus mieux ?

L'idée:

  • nginx est installé en frontal
  • on va utilisé “php5-cgi” (au lieu de “libapache2-mod-php5” )

Ce qui aura l'avantage de :

  • utiliser apache2-mpm-worker ?
  • nginx ?
  • … ? je sais pas

Dépendances

# aptitude install apache2-mpm-worker
# aptitude install php5-cgi php5-cli php5-gd
# aptitude install php5-sqlite

rpaf

Comme on a un frontal nginx, les IP vu sont celle de nginx en local.

Donc:

# aptitude install libapache2-mod-rpaf

Dans /etc/apache2/mods-enabled/rpaf.conf , adapter la ligne pour donner l'IP de nginx:

RPAFproxy_ips <IP_LOCAL_DE_NGINX>
# apache2ctl graceful

Voila.

php5-cgi

Lien:

Activer “php5-cgi” en lieu et place de son equivalent en module:

# TJ ---------------------
<Location /dotclear/>
              AddHandler cgi-php5 .php
              Action cgi-php5 /cgi-bin/php5

              #Order allow,deny
              #Allow from all
              Order deny,allow
              Allow From <MON_IP_PENDANT_L_INSTALLATION>
              Deny from all
</Location>
# -------------------------

dotclear2-loader.php

# cd /var/www
# mkdir dotclear
# cd dotclear

Télécharger dotclear2-loader.php

# wget <...>dotclear2-loader.php

Permettre l'ecriture…

# chown www-data: .
http://<mon_web>/dotclear/dotclear2-loader.php

J'installe dans le repertoire courant (et non pas dans “…/dotclear/dotclear”)

:!: Mais comme dit plus loin, pour SQLite, il faut faire ça à la main, un peu.

Préparer le répertoire ou stocker la base:

# mkdir -p /var/lib/db/dotclear
# chown www-data: /var/lib/db/dotclear/.

Générer un truc aléatoire:

# dd if=/dev/urandom bs=36 count=1 | openssl base64  
OUUu2S225BZCjOiMDCZBxk82cY1X8yyTfH0uxmfeDbZUyFp+

Dans …/dotclear/inc/ :

# cp -p config.php.in config.php

Modifier config.php pour avoir (par exemple):

define('DC_DBDRIVER','sqlite');
define('DC_DBNAME','/var/lib/db/dotclear/blog.sqlite');
define('DC_MASTER_KEY','<LE_TRUC_ALEATOIRE_PLUS_HAUT>');

Et reprendre en retournant par là:

http://<mon_web>/dotclear/admin/install/  

DotClear2 - methode B

pré-requis

# aptitude install libapache2-mod-php5
# aptitude install php5-mysql
ou
# aptitude install php5-sqlite

Facultatif:

# aptitude install php5-gd

installation

Suivre les instructions ici http://fr.dotclear.org/documentation/2.0/admin/install

Au plus simple, avec dotclear2-loader.php et avec sqlite :

# cd /var/www
# mkdir dotclear
# cd dotclear
# wget http://download.dotclear.net/loader/dotclear2-loader.php
# chown www-data: .

Et puis avec son navigateur:

http://<HOST>/dotclear/dotclear2-loader.php

Suivre la procédure…

Jusqu'à la configuration de la base de données ! et là, pour sqlite, il faut editer à la main le fichier de config…

# cd inc
# cp config.php.in config.php
# vi config.php

et faire en sorte d'avoir:

define('DC_DBDRIVER','sqlite');
define('DC_DBHOST','');
define('DC_DBUSER','');
define('DC_DBPASSWORD','');
define('DC_DBNAME','<CHEMIN_VERS_UNE_BASE_SQLITE.db>');
define('DC_DBPREFIX','dc_');
define('DC_DBPERSIST',false);
define('DC_MASTER_KEY','<CLE_A_CREER_PAR_EXEMPLE: LS -lR /| MD5SUM>');
define('DC_ADMIN_URL','http://<HOST>/dotclear/admin/');
define('DC_SESSION_NAME','dcxd');
define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins');
define('DC_TPL_CACHE',dirname(__FILE__).'/../cache');

Et puis:

http://<HOST>/dotclear/admin/install

Et voila.

Dotclear

Installer

Télécharger la dernière version a partir d'ici: http://www.dotclear.net/
Par exemple:

$ cd ~/tmp
$ wget http://download.dotclear.net/latest-1.2.tar.gz

Decompresser:

$ tar xvzf latest-1.2.tar.gz

Et on récupère: dotclear-1.2.5.tar.gz, qu'on decompresse:

$ tar xvzf dotclear-1.2.5.tar.gz

Renommer en ''monblog''

Qu'on fout a partir de la racine:

$ mv dotclear ~/www/.

Et que je renomme autrement:

$ cd ~/www
$ mv dotclear monblog

Répertoires en ecriture

Il faut autoriser en écriture les répertoires suivant:

  • monblog/conf
  • monblog/images
  • monblog/themes

Et donc pour chacun de ces répertoires:

$ cd ~/www/monblog
$ chown :www-data conf
$ chmod g+w conf
etc...

MySQL

Se connecter a MySQL:

$ mysql -u root -p

Creer une database:

mysql> create database dotclear;

Creer un user associé:

mysql> GRANT ALL ON dotclear.* TO dotclear@localhost;

(Pas besoin de mot de passe ?)

install

Effectuer l'install a partir de PHP:

http://tjaouen.fr/monblog/install

Et le plus dur est fait ;-)

admin

Là, c'est pas evident puisqu'il faut faire:

http://tjaouen.fr/monblog/ecrire

Plugins

Antispam

Installer

Installer le plugin 'captcha accessible', qui fonctionne avec Dotclear 2 (celui que j'utilise).
Lien: http://www.atelierphp5.com/un-captcha-accessible.html

Pour installer:

DotClear-Administration > Outils > Gestionnaire des plugins

(Faire en sorte que le répertoire “monblog/ecrire/tools” soit autorisé en écriture à “www-data”.)

Copier/Coller le lien vers le plugin:

[[http://www.atelierphp5.com/pub/dotclear/plugin-captcha-1.1.pkg.gz]]

Puis cliquer sur “[Installer]”…
Le plugin “Anti-Spam pour les commentaires” apparait, mais il n'est pas activé, donc faire: Selectionner puis “Action sur les plugins sélectionnés : basculer etat”.
Voila le plugin activé.

Configurer

Suivre les instructions affiché dans la section “plugins > Captcha”…

Table SQL

A creer selon modèle…

Code HTML

A injecter dans “form.php” (exemple):
(Si vous utilisez le theme par defaut, sinon, adapter)

$ vi monblog/themes/default/form.php
<fieldset>	
<p class="field">
<table border="1" bgcolor="lightgray" ><tr><td>
  <label for="dc_captcha"><?php dcCaptcha::question(); ?></label>
  <?php dcCaptcha::field(); ?>
</td></tr></table>
</p>

<p><input type="checkbox" id="c_remember" name="c_remember" />
<label for="c_remember">Se souvenir de mes informations</label>
</p>
<p><input type="submit" class="preview" name="preview" value="pr&eacute;visualiser" />
<input type="submit" class="submit" value="envoyer" />
<input type="hidden" name="redir" value="<?php dcCommentFormRedir(); ?>" /></p>
</fieldset>

L'ajout d'une “table” est de mon fait.

Modifier les fichiers de configuration

Allez dans “monblog/ecrire/tools/captcha” :

 $ cd monblog/ecrire/tools/captcha

UTF8

Modifier les fichiers php en UTF-8… (parce que j'avais des problèmes avec les accents…):

$ recode latin1..utf8 *php

(Si nécessaire, installer d'abord le pakage recode)

Personnaliser

Editer les paramètres en éditant le fichier “config.php” (Exemple) :

$ vi config.php
...
	$GLOBALS['captcha_level'] = 1;
...
$GLOBALS['captcha_logs'] = '<quelque_part_ou_www_a_les_droits>/spam.txt';

Et voila

www_dotclear.1329762781.txt.gz · Dernière modification : 2012/02/20 18:33 (modification externe)