Segui o tutorial a seguir para isolar meus dois sites.
https://www.vultr.com/docs/use-php-fpm-pools-to-secure-multiple-web-sites/
Aqui está o que eu fiz:
Criou dois usuários e atribuiu permissões a eles.
$ sudo useradd site1 $ sudo useradd site2 $ usermod -a -G site1 www-data $ usermod -a -G site2 www-data
Permissões de diretório atribuídas
$ sudo mkdir /var/www/site1 $ sudo chown -R site1:site1 /var/www/site1 $ sudo mkdir /var/www/site2 $ sudo chown -R site2:site2 /var/www/site2 $ sudo chmod 770 /var/www/site2
Criou dois pools de fpm
$ sudo cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/fpm-site1.conf $ sudo cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/fpm-site2.conf
Em seguida, configurei esses pools
- Alterada a linha superior entre colchetes que define o nome do pool de [www] para [site1].
- Alterada a linha user = www-data para user = site1.
- Alterada a linha group = www-data para group = site1.
- Alterada a linha listen = /var/run/php/php7.4-fpm.sock para listen = /var/run/php/php7.4- site1-fpm.sock
Fiz o mesmo para o segundo pool.
Configurei o nginx e defini esses pools em cada site
location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.4-fpm-site1.sock; include snippets/fastcgi-php.conf; }
Fiz o mesmo para o site2 e reiniciei o php-fpm e o nginx.
Agora chegando ao problema. Todas as páginas PHP do primeiro site são de propriedade de site1:site1
enquanto o segundo site é de propriedade de site2:site2
. Exceto uma página do segundo site que pertence a site1:site1
. Eu esperava que quando tentasse acessar aquela página do segundo site no navegador, receberia algum erro (porque não é de propriedade de site2:site2
), mas não recebi nenhum erro e a página abriu normalmente. Você acha que está funcionando corretamente e meu entendimento de como deveria funcionar está incorreto? Ou aquela página do segundo site não deveria ter aberto no navegador?