Bonsoir,
Mon site d'écrits - ecrits.stephane-huc.net - change d'hébergement.
Je
migre d'un serveur@home, sous Ubuntu, à un serveur online sous OpenBSD. Les deux
utilisant nginx ;)
Le groupe et l'utilisateur du service nginx n'est pas celui par défaut.
$ groupinfo grp_nginx
name grp_nginx
passwd *
gid 347
members mad ecr
$ getent group grp_nginx
grp_nginx:*:347:mad,ecr
Le pool php-fpm lié à un (sous.)domaine a pour utilisateur celui du (sous.)domaine, tel que :
user = user_domain
group = user_domain
listen.owner = user_nginx
listen.group = grp_nginx
listen.mode = 0660
----
Pour certaines raisons, je mets en place une ferme DW.
Problèmes après problèmes, j'arrive enfin à un résultat, presque fonctionnel.
Je détaille légérement la config.
Le "fermier" se trouve à l'adresse 'mad.stephane-huc.net' - bloqué par authentification HTTP - je peux vous assurer qu'il fonctionne :p
Ce site fonctionne avec son propre utilisateur 'mad', faisant partie du groupe/utilisateur lié au service nginx+php-fpm.
À partir de la racine du site 'mad.stephane-huc.net', j'ai donc :
- /root_mad.stephane-huc.net/dokuwiki <= le fermier, ayant les droits utilisateurs 'mad' lié à ce domaine, chmod 0755
- /root_mad.stephane-huc.net/farm/ <= chmod 0755
Son propre pool php-fpm a bien :
user = mad
group = mad
listen.owner = user_nginx
listen.group = user_nginx
listen.mode = 0660
----
Le fichier '/root_mad.stephane-huc.net/dokuwiki/inc/preload.php' a bien la constante 'DOKU_FARMDIR' pointant vers le répertoire '/root_mad.stephane-huc.net/farm/'
Mon premier animal est mon site d'écrits.
(lui aussi utilise son propre utilisateur 'ecr', lui aussi intégré au groupe/utilisateur nginx+php-fpm)
- /root_mad.stephane-huc.net/farm/ecrits.stephane-huc.net/{conf,data} <= mon premier animal, avec les droits utilisateurs 'ecr' liés à ce sous-domaine. chmod 0755
(pour l'instant, ce sont les fichiers et repertoires 'conf' et 'data' de l'archive animal...)
La config nginx pour ce domaine :
server {
(...)
root /root_mad.stephane-huc.net/dokuwiki/
location / {
try_files $uri $uri/ @dokuwiki;
}
location ~ /(bin|conf|data|inc)/ {
deny all;
}
location @dokuwiki {
rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1&animal=ecrits.stephane-huc.net last;
rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1&animal=ecrits.stephane-huc.net last;
rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2&animal=ecrits.stephane-huc.net last;
rewrite ^/tag/(.*) /doku.php?id=tag:$1&do=showtag&tag=tag:$1&animal=ecrits.stephane-huc.net last;
rewrite ^/(.*) /doku.php?id=$1&$args&animal=ecrits.stephane-huc.net last;
}
location ~ \.php$ {
try_files $uri =404;
(...)
fastcgi_index doku.php;
include /etc/nginx/fastcgi_params;
(...)
}
(....)
}
Son propre pool php-fpm a bien :
user = ecr
group = ecr
listen.owner = user_nginx
listen.group = user_nginx
listen.mode = 0660
Le fichier '/root_mad.stephane-huc.net/farm/ecrits.stephane-huc.net/conf/local.protected.php' est ainsi configuré :
$conf['savedir'] = DOKU_CONF.'../data';
$conf['updatecheck'] = 0;
Pourtant l'url '
http://ecrits.stephane-huc.net/doku.php' retourne l'erreur suivante :
DokuWiki Setup Error
The datadir ('pages') at ./data/pages is not found, isn't accessible or writable. You should check your config and permission settings. Or maybe you want to run the installer?
-----
Qu'est-ce que je loupe ?!