lnmp php重启没有加载正确php.ini文件

参考内容:http://www.cnblogs.com/argb/p/3604340.html

早上修改了php的配置文件,php-fpm.conf,重启nginx,php-fpm后发现网站启动不来了。nginx错误日志为:

2015/09/18 10:11:30 [error] 15081#0: *1073 FastCGI sent in stderr: "PHP message: PHP Warning:  require_once(Zend/Application.php): failed to open stream: No such file or directory in /web/www.XXX.com/wwwroot/public/index.php on line 18
PHP message: PHP Fatal error:  require_once(): Failed opening required ‘Zend/Application.php‘ (include_path=‘/web/www.XXX.com/wwwroot/library:.:/usr/local/lib/php‘) in /web/www.XXX.com/wwwroot/public/index.php on line 18" while reading response header from upstream, client: xxx.19.116.133, server: www.XXX.com, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/usr/local/php/var/run/www.XXX.com.socket:", host: "www.XXX.com"

通过好长时间的分析,是php.ini里面的zend配置没有生效,因此有可能是php.ini文件没有被加载。

首先检查PHP的编译参数

[[email protected] ~]$ /usr/local/php/bin/php -i|grep configure
Configure Command =>  ‘./configure‘  ‘--prefix=/usr/local/php‘ ‘--with-config-file-path=/usr/local/php/etc‘ ‘--with-mysql=/usr/local/mysql‘ ‘--with-mysqli=/usr/local/mysql/bin/mysql_config‘ ‘--with-mysql-sock=/tmp/mysql.sock‘ ‘--with-pdo-mysql=/usr/local/mysql‘ ‘--with-gd‘ ‘--enable-libxml‘ ‘--enable-xml‘ ‘--enable-bcmath‘ ‘--enable-shmop‘ ‘--enable-sysvsem‘ ‘--enable-inline-optimization‘ ‘--with-curlwrappers‘ ‘--enable-mbregex‘ ‘--enable-fpm‘ ‘--enable-mbstring‘ ‘--enable-ftp‘ ‘--enable-gd-native-ttf‘ ‘--with-openssl‘ ‘--enable-pcntl‘ ‘--enable-sockets‘ ‘--with-xmlrpc‘ ‘--enable-zip‘ ‘--enable-soap‘ ‘--without-pear‘ ‘--with-gettext‘ ‘--enable-session‘ ‘--with-mcrypt‘ ‘--with-curl‘ ‘--enable-ctype‘ ‘--with-freetype-dir‘

--with-freetype-dir参数是后面重新编译添加的参数,也就是说,PHP经历过两次编译.

查看php的php.ini文件默认路径:

[[email protected] ~]$ /usr/local/php/bin/php -i|grep php.ini
Configuration File (php.ini) Path => /usr/local/php/etc
Loaded Configuration File => /usr/local/lib/php.ini

由此可以看出,此时php默认加载的php.ini文件存在路径是:/usr/local/lib/php.ini

而我的正确的php.ini文件存在路径为:/usr/local/php/etc/php.ini

经检查,/usr/local/lib/php.ini的确没有配置zend扩展,因此网站无法启动.

cp /usr/local/php/etc/php.ini /usr/local/lib/php.ini

将php.ini文件覆盖过去,重启php-fpm,网站OK

或者使用命令直接加载php.ini文件

[[email protected] etc]# /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini

解决问题

思考:php文件:php-fpm.conf php.ini两个文件,php-fpm.conf是 php-fpm进程服务的配置文件

php.ini是php运行核心配置文件,也是php扩展的配置文件,比如

extension=memcache.so
extension=yaf.so
extension=redis.so

在php.ini里面将扩展内容配置才能生效.

因此本案件中,zend扩展没有生效,就可以查找php.ini文件是否生效.

时间: 2024-10-11 21:42:58

lnmp php重启没有加载正确php.ini文件的相关文章

Fedora20异常重启后很多模块没有加载

前天早上台式机显示器突然白屏了.为了确定是显示器还是显卡的问题,期间启动过几次系统,由于屏幕白屏,只能是使用电源键非正常关机了.在确定是显示器的问题,昨天向朋友借来了一台显示器后,系统可以正常启动,登录什么的也没有问题,但是网卡和声卡都用不了了!使用 lsmod 命令查看,只有十个不到的模块被加载了,ifconfig -a 命令也只有 lo 接口...... 用手机上网搜索,尝试了不少方法,但是都没有作用.今天晚上再次进行尝试.首先使用 lspci 命令可以看到网卡: [[email prote

weblogic重启后,后台没有加载却可以正常访问

1.背景叙说    在linux环境下使用weblogic中间启动应用后,后台登陆后加载需要启动的应用程序,中途修改,重新加载后.其中某一个应用不在后台加载列表中,但是通过地址访问同样可以正常访问.后台删除应用后,再次加载仍然看不到,但是可以访问. 2.原因:    原因是在建立的域下面,在config目录文件下有一个config.xml控制了.即在第一次加载应用成功后,该config.xml文档一直存在,并且始终被调用 路径:/oracle/middleware/user_projects/d

课程设计(物体类),图片可能没有加载出来,自己运行一下就行了

一.课程设计题目与要求(包括题目与系统功能要求) A.<1>设计如下类,其功能和部分成员如下: Object:抽象类,所有的物体都有价值(profit)属性: Point:点的位置: Line(线段),Rectangle,Cuboid, Square,Cube,Circle,Cylinder. <2>功能:能够实现上述物体的移动(move),放大(zoomin),缩小(zoomout),大小比较(compare),打印物品信息(cout<<编号.面积.容积和价值)等操作

当前不会命中断点,还没有加载该文档加载任何符号

断点调试是我编程时经常用到的,但有的程序并一定有Windows界面,而是附加到其他程序中的,如ArcGIS的Addin开发.当我在代码中插入断点调试无效(断点不起作用),并警告"当前不会命中断点,还没有加载该文档加载任何符号". 网上查了说可能是Framework版本的问题,我才恍然大悟:ArcGIS 10.1的Framework版本配置是3.5,而默认VS2010新建的程序Framework版本是4.0,原来如此. 修改目标框架后,要重新清理.重新生成一下. 虽然,调试时还是如此显示

使用语音输入法时,当文字没有加载出来,清空文本框时系统崩溃

今天测试组发现一问题:"在对话页使用语音输入法时,当文字没有加载出来点击"发送"按钮,系统崩溃": 于是网上查了很多资料还是没什么好的方式: 测试微信的发送消息功能,一样的都有此bug问题,毕现!(程序立即崩溃): 如下图(正在获取语音数据时点击发送信息程序立即崩溃) 解决办法: 写了一方法: BOOL containsDictationView(UIView *view) { if (strstr(class_getName(view.class), "

php命令行模式下加载的php.ini文件可能和web模式下加载的php.ini不一致

命令行下查看加载的php.ini的路径: php -i|grep php.ini web模式下查看: <?php phpinfo(); ?> 两种模式下加载的php.ini可能不一样,要注意这个问题. 指定命令行下加载的ini路径: php -c /usr/local/php/etc/php.ini  test.php

使用idea搭建maven项目时 java目录下的xml文件没有加载的解决方法

今天在idea集成开发环境下 使用maven搭建了ssm项目,遇到了3个问题 首先我们先复习一下知识点: 第一步:在web.xml中配置spring监听器 <!-- spring监听器 加载spring容器 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <con

pom.xml文件project报错Failed to read artifact descriptor forXXX:jar:unknow,导致idea导入项目时maven依赖没有加载进项目的问题

可能造成的原因有很多,需要一个一个尝试解决.首先检查一下看看maven仓库设置有没有出错.没有出错再执行下面的步骤 1.右键选择maven Reimport 一下 右键选择这个就行了,比较方便快捷 2.把报错的那个jar包的maven依赖引入文件删除,Reimport ,再把依赖复制进去 Reimport  一下 这个操作也很快,主要是看看是不是因为这个依赖的原因导致报错 3.去本地仓库找到这个依赖包的文件夹,删除掉, 再Reimport 到这一步的话就是因为有一次依稀下载到一半的时候下载失败,

mui框架中,当初始进入某个页面时候,数据没有加载出来显示有误

在mui框架中,初始化进入一个页面,js可能加载缓慢,数据使用vue的时候会显示{{****}},中间是你的值,会影响用户体验.可以先把数据部分隐藏,再展示出来 [v-cloak]{ display: none; } 原文地址:https://www.cnblogs.com/wuzhaoyu/p/12055740.html