open_basedir pour bloquer php dans un répertoire sans chroot
mardi 4 novembre 2014 à 15:00Mes liens partagés - e-loquens.fr 04/11/2014
Si vous ne voulez pas que php sorte d'une arborescence définie, mais que vous ne voulez pas mettre en place de chroot, vous pouvez utiliser la fonction open_basedir de php.
Pour plusieurs sites avec des arborescences différents, vous pouvez utiliser plusieurs instances de php-fpm avec chacune leur socket. voici un exemple de configuration:
[sngtv.vetocom.fr]
listen = /var/run/monsiteamoi.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
user = www-data
group = www-data
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
php_admin_value[open_basedir] = /home/www/monsite #php ne pourra accéder à des fichiers hors de ce dossier, tels que /etc/passwd .
Côté Nginx, il suffit dans les directives des sites concernés de modifier l'adresse du socket.
(Permalink)
Si vous ne voulez pas que php sorte d'une arborescence définie, mais que vous ne voulez pas mettre en place de chroot, vous pouvez utiliser la fonction open_basedir de php.
Pour plusieurs sites avec des arborescences différents, vous pouvez utiliser plusieurs instances de php-fpm avec chacune leur socket. voici un exemple de configuration:
[sngtv.vetocom.fr]
listen = /var/run/monsiteamoi.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
user = www-data
group = www-data
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
php_admin_value[open_basedir] = /home/www/monsite #php ne pourra accéder à des fichiers hors de ce dossier, tels que /etc/passwd .
Côté Nginx, il suffit dans les directives des sites concernés de modifier l'adresse du socket.
(Permalink)