无忧编程_ASP.NET  / C# / PHP 程序员的软件世界

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 110|回复: 0

ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' 问题的解决

[复制链接]

244

主题

271

帖子

1090

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1090
发表于 2017-8-10 13:29:15 | 显示全部楼层 |阅读模式
ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' 问题的解决
今天继续作大死,趟php7的配置的坑。
照例,安装了昨天的各种扩展之后,解压php7的压缩文件到 /usr/local/。
然后开始配置config的扩展:
./configure --prefix=/usr/local/php7  
--with-gd  
--with-freetype-dir  
--enable-gd-native-ttf  
--enable-mysqlnd  
--with-pdo-mysql=mysqlnd  
--with-openssl  
--with-mcrypt  
--enable-mbstring  
--enable-zip  
--enable-fpm
在这里遇到了第一个坑:坑1。本来保证了全部的扩展命令都是一行,以保证正常安装。但是安装完成之后,竟然连个Makefile文件都没有。所以make和make install命令没法儿运行。索性先检查是否所有命令得到了执行。
./configure --enable-fpm
重新安装fpm之后,Makefile总算是出来了。
然后make一下。出来坑2:
ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' (ret=2) from /usr/local/etc/php-fpm.conf at line 125.
这个好说,既然是在 /usr/local/etc/php-fpm.conf文件的问题,就去找,果然最后一行是这个样子的:
  include=NONE/etc/php-fpm.d/*.conf
果断修改为 include=etc/php.fpm.d/*.conf,要不然这个文件的配置扩展会找不到(也就是下面一个坑)
因为这个时候心里灰常纳闷。看到网上说要修改/usr/local/etc/php-fpm.conf里面,
; Unix user/group of processes; Note: The user is mandatory. If the group is not set, the default user's group;       will be used.user = www-datagroup = www-data

好嘛,说改就改嘛。我查到根目录下,有两个conf,
但是无论是哪一个php-fpm.conf文件中,都没有找到; Unix user/group of processes; Note: The user is mandatory. If the group is not set, the default user's group;       will be used.
这段话。所以我开始怀疑这个问题是不是有点刻舟求剑了。于是开始找另外两个拓展配置文件:
总算找到了,在php7/sapi/fpm/www.conf下,
把这两个nobody修改成了www-data之后,继续运行 /usr/local/bin/php-fpm 遭遇坑3:
  ERROR: [pool www] cannot get uid for user 'www-data'
这个时候内心是十分崩溃的。说好的开启服务呢??
好吧,这个www.conf是什么鬼,我查到了官网中的定义,说
那不就得了,索性全部用nobody避免风险啊。于是开心的改了回来。
再运行 /usr/local/bin/php-fpm ,果然正常启动了。小结:
1.在解压后,将文件夹放到/usr/local/下之后,如果安装 ./configure 扩展后没有出现Makefile,要考虑编译 PHP 时需要 --enable-fpm 配置选项来激活 FPM 支持,所以要重新安装一次确保安装成功:
./configure --enable-fpm

2.总共需要修改四个文件,首先,保证下面两个php-fpm.conf的扩展配置文件www.conf里面的user group 都是默认的nobody
/usr/local/etc/php-fpm.d/www.conf
/usr/local/php7/sapi/fpm/www.conf

3.其次在下面两个文件中最后一行的 include=NONE/etc/php-fpm.d/*.conf修改为include=etc/php-
fpm.d/*.conf
/usr/local/etc/php-fpm.conf
/usr/local/php7/sapi/fpm/php-fpm.conf


4.因为修改了配置文件中的用户和用户组,则需要重新运行
./configure --enable-fpm --with-mysqli --with-fpm-user=nobody --with-fpm-group=nobody
最后贴出引用过的官方文档地址:
http://php.net/manual/zh/install.unix.nginx.php


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
windows .net(C#+MSSQL) linux(php+mysql)  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软件编程 Inc.  

GMT+8, 2017-9-20 21:02 , Processed in 0.179000 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表