php-fpm.conf 为每一个站点制定一个pool并限定open_basedir

回复 收藏
从php-5.3版本以后,php-fpm.conf 的格式不再是xml格式,而是和php.ini所使用的格式一样。新版本的php-fpm.conf 从宏观上看共分为两大块:一个是全局配置[global],一个是Pool Definitions, [www]
其中global部分就是配置一些全局的参数,比如错误日志、pid、日志级别等,第二部分的pool可以定义多个,而且[]的name可以自定义:例如配置文件可以这样写
  1. [global]
  2. ...
  3. ...
  4. ...
  5. [www.domain1.com]
  6. ...
  7. ...
  8. ...
  9. [www.domain2.com]
  10. ...
  11. ...
  12. ...
其中配置部分省略。

当然每一个[www]部分都可以单独写一个配置文件,就像nginx的vhosts一样。这就需在php-fpm.conf中首先加一句
include=etc/fpm.d/*.conf
然后,需要在etc目录下创建一个fpm.d目录,把每一个pool配置文件放到fpm.d下。

为了安全起见,需要定义每个pool所启用的账户,还需要定义open_basedir,如下
  1. [www.domain.com]
  2. user = user0
  3. group = users
  4. listen = /tmp/php-fcgi-www.default.com.sock
  5. listen.owner = user0
  6. listen.group = users
  7. pm = dynamic
  8. pm.max_children = 20
  9. pm.start_servers = 5
  10. pm.min_spare_servers = 4
  11. pm.max_spare_servers = 10
  12. pm.max_requests = 500
  13. slowlog = log/www.default.com.slow
  14. request_slowlog_timeout = 1
  15. php_admin_value[open_basedir]=/data/release/www.domain.com/:/tmp/
  16. [www.domain2.com]
  17. user = user1
  18. group = users
  19. listen = /tmp/php-fcgi-www.default2.com.sock
  20. listen.owner = user1
  21. listen.group = users
  22. pm = dynamic
  23. pm.max_children = 20
  24. pm.start_servers = 5
  25. pm.min_spare_servers = 4
  26. pm.max_spare_servers = 10
  27. pm.max_requests = 500
  28. slowlog = log/www.default2.com.slow
  29. request_slowlog_timeout = 1
  30. php_admin_value[open_basedir]=/data/release/www.domain.com/:/tmp/
2013-03-01 09:19 举报
已邀请:
0

無名世界

赞同来自:

当然每一个[www]部分都可以单独写一个配置文件,就像nginx的vhosts一样。这就需在php-fpm.conf中首先加一句
include=etc/fpm.d/*.conf
然后,需要在etc目录下创建一个fpm.d目录,把每一个pool配置文件放到fpm.d下。


意思应该是说:www.domain.com 可以单独写一个配置文件,然后www.domain2.com可以再单独写一个配置文件,但是必须要放到/etc/fpm.d、目录下面。
0

善思致用

赞同来自:

無名世界 发表于 2014-11-3 11:14
意思应该是说:www.domain.com 可以单独写一个配置文件,然后www.domain2.com可以再单独写一个配置文件 ...

不是根目录的/etc/fpm.d,而是/usr/local/php/etc/fpm.d,其中fpm.d目录是自己创建的名字可以随便取,其实你也可以写别的路径,include=*/*.conf ,include的时候写绝对路径就没问题,放在/usr/local/php/etc/fpm.d下只是为了方便管理

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: