Apache和php-fpm - 用户隔离

时间:2017-07-12 13:14:51

标签: php apache

我已经设置了默认的Apache + php-fpm,下面的设置可行。它是否足以运行托管或是否有我缺少的模块?

我只是想了解它如何一起工作以及如何创建用户分离/隔离 - 以便在服务器上的vhost上创建的文件由该用户拥有,而不是apache / www(系统用户)。我也希望能够有几个php-fpm池。

我设置它的方式,通过每个用户拥有一个php-fpm池来实现。此vhost管理的所有文件都由我放入fpm-pool-config的用户拥有。但我需要为每个用户创建大量的端口和一个/etc/php-fpm.d/test99com.conf。

下面的设置安全吗?我注意到cPanel在他们的vhost中有用户部分,我只在我的php-fpm中有它。

我也知道如何通过内存限制vhost:例如最大256 MB。

请注意,我只打算托管PHP软件(没有cgi / perl)。

Apache httpd.conf

<VirtualHost *>
DocumentRoot "/home/test99/public_html"
ServerName test99.com

 <FilesMatch \.php$>
  #SetHandler application/x-httpd-php
  SetHandler "proxy:fcgi://127.0.0.1:9001"
 </FilesMatch>

<Directory "/home/test99/public_html">
  allow from all
  Options None
  Require all granted
  </Directory>
</VirtualHost>

PHP-fpm.d / test99no.conf

; Start a new pool named 'www'.
; the variable $pool can we used in any directive and will be replaced by     the
; pool name ('www' here)
[test99]
user = test99
group = test99
listen = 127.0.0.1:9001
listen.allowed_clients = 127.0.0.1
php_admin_value[error_log] = /var/log/php-fpm/www-error.log

0 个答案:

没有答案