今天继续作大死,趟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-data
group = 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.fpm.install.php

http://php.net/manual/zh/install.unix.nginx.php

ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' 问题的解决的更多相关文章

  1. ERROR: Unable to globalize '/usr/local/NONE/etc/php-fpm.d/*.conf' (ret = 2) from /usr/local/etc/php-fpm.conf at line WARNING: Nothing matches the include pattern '/usr/local/php7/etc/php-fpm.d/*.conf'

    Building from source is not easy if something is a bit different, and I had a hard time with some di ...

  2. mysql_install_db出错,Unable to lock /usr/local/mysql/var/ibdata1, error: 11

    今天,在一台旧机器上编译一个新的Mysql,install时出了错: /usr/local/mysql_5615/scripts/mysql_install_db --user=mysql --bas ...

  3. 安装vmtools Error: Unable to execute "/usr/bin/vmware-uninstall-tools.pl.

    Error: Unable to execute "/usr/bin/vmware-uninstall-tools.pl. 安装vmware tools错误解决办法 很多朋友都在用vmwar ...

  4. pytesseract.pytesseract.TesseractError: (1, 'Error opening data file /usr/local/share/tessdata/chi_sim.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata"

    pytesseract.pytesseract.TesseractError: (1, 'Error opening data file /usr/local/share/tessdata/chi_s ...

  5. Error: Could not link: /usr/local/share/doc/homebrew

    mac 执行brew update 报错 Error: Could not link: /usr/local/share/doc/homebrew 更新brew,报错 Error: Could not ...

  6. nginx停止后再启动出现: [error] open() "/usr/local/nginx/logs/nginx.pid" failed错误的解决方法

    为了备份数据 手动停止了服务器的nginx 结果启动时报错 nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" fail ...

  7. 报错解决——pytesseract.pytesseract.TesseractError: (1,’Error opening data file /usr/local/share/tessdata/eng.traineddata’)

    解决方法:(原文地址http://stackoverflow.com/questions/14800730/tesseract-running-error) $ wget https://tesser ...

  8. 打开程序出现.Net Framework Initialization Error – Unable to find a version of the runtime to run this applicatio的解决办法

    部署一个VS2010开发的程序时遇到 了一个非常奇怪的问题,客户端上已经安装了.net framework 4.0,但运行时还是会弹出错误: .Net Framework Initialization ...

  9. 0x800a138f - JavaScript runtime error: Unable to get property 'asSorting' of undefined or null reference 错误原因以及解决办法

    使用Jquery Datatables的时候也许会碰到这样的错误提示,当我们仔细的查找代码,发现引用的js文件,css文件均引用了,就是找不到他的问题所在. 这是从我们引用的js文件内部报的错. 这个 ...

随机推荐

  1. xcode低版本调试高版本真机系统

    低版本xcode调试本真机高版本系统 //打开此路径把最新的文件拷贝到这里就可以了 /Applications/Xcode.app/Contents/Developer/Platforms/iPhon ...

  2. HTML5知识点总结

    HTML5知识点总结(一) 一.HTML新增元素 1.IE9版本以下支持HTML5的方法 <!--[if lt IE9]> <script src="http://cdn. ...

  3. Oozie分布式任务的工作流——邮件篇

    在大数据的当下,各种spark和hadoop的框架层出不穷.各种高端的计算框架,分布式任务如乱花般迷眼.你是否有这种困惑!--有了许多的分布式任务,但是每天需要固定时间跑任务,自己写个调度,既不稳定, ...

  4. H5+JS+CSS3 综合应用

    慕课网新教程H5+JS+CSS3 实现的七夕言情主题效果已经出炉了 从设计到实现到录制与编写用了快1个月的时间,说真的这个案例是慕课定制的,我之前也没有系统的做过这样的一个效果,在实现的时候自己也重新 ...

  5. C#多线程之基础篇2

    在上一篇C#多线程之基础篇1中,我们主要讲述了如何创建线程.中止线程.线程等待以及终止线程的相关知识,在本篇中我们继续讲述有关线程的一些知识. 五.确定线程的状态 在这一节中,我们将讲述如何查看一个线 ...

  6. 你可能不知道的陷阱, IEnumerable接口

    1.  IEnumerable 与  IEnumerator IEnumerable枚举器接口的重要性,说一万句话都不过分.几乎所有集合都实现了这个接口,Linq的核心也依赖于这个万能的接口.C语言的 ...

  7. 在C#里面给PPT添加注释

    平常开会或者做总结报告的时候我们通常都会用到PowerPoint演示文稿,我们可以在单个幻灯片或者全部幻灯片里面添加注释,这样观众可以从注释内容里面获取更多的相关信息. 有些朋友不清楚如何在幻灯片里面 ...

  8. 由objC运行时所想到的。。。

    objC语言不仅仅有着面向对象的特点(封装,继承和多态),也拥有类似脚本语言的灵活(运行时),这让objC有着很多奇特的功能-可在运行时添加给类或对象添加方法,甚至可以添加类方法,甚至可以动态创建类. ...

  9. TFS2017持续集成构建

    TFS2017发布已经有几个月了,经过了几天的部署和尝试,TFS2017的功能变化真是挺大的.特别是在构建方面的变化,在产品的向导中已经声明XAML版本控制器和代理已经弃用了,并建议升级原来13和15 ...

  10. JSONP的诞生、原理及应用实例

    问题: 页面中有一个按钮,点击之后会更新网页中的一个盒子的内容. Ajax可以很容易的满足这种无须刷新整个页面就可以实现数据变换的需求. 但是,Ajax有一个缺点,就是他不允许跨域请求资源. 如果我的 ...