如何设置php.ini的目录
通常php.ini的位置在:
/etc目录下或/usr/local/lib目录下
如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法:
1.新建php文件,写入如下代码
<?php
echo phpinfo();
然后在浏览器访问该页面,搜索php.ini,
2.执行,(需要修改php为你自己的路径)
/usr/local/php/bin/php --ini
会显示php.ini所在路径,哪个路径下没有php.ini文件,
Configuration File (php.ini) Path: /usr/local/php/lib
Loaded Configuration File: (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
php.ini位置修改方法如下: php.ini文件缺省放在/usr/local/lib上面,可以在编译的时候使用--with-config-file-path参数来修改php.ini的存放位置。
例如,
你可以使用
--with-config-file-path=/etc
把php.ini存放到/etc下面,然后可以从源码包中拷贝php.ini-dist到/etc/php.ini。
linux下php-fpm的启动和关闭
查看php-fpm的地址
whereis php-fpm
启动php-fpm:
/usr/local/php/sbin/php-fpm
php 5.3.3 以后的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,所以不要再看这种老掉牙的命令了,需要使用信号控制:
master进程可以理解以下信号
INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块
一个简单直接的重启方法:
先查看php-fpm的master进程号
ps aux|grep php-fpm
root 21891 0.0 0.0 112660 960 pts/3 R+ 16:18 0:00 grep --color=auto php-fpm
root 42891 0.0 0.1 182796 1220 ? Ss 4月18 0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody 42892 0.0 0.6 183000 6516 ? S 4月18 0:07 php-fpm: pool www
nobody 42893 0.0 0.6 183000 6508 ? S 4月18 0:17 php-fpm: pool www</pre>
重启php-fpm:
kill -USR2 42891
OK了。
上面方案一般是没有生成php-fpm.pid文件时使用,如果要生成php-fpm.pid,使用下面这种方案:
上面master进程可以看到,matster使用的是/usr/local/php/etc/php-fpm.conf这个配置文件,
cat /usr/local/php/etc/php-fpm.conf
发现:
[global]
; Pid file
; Note: the default prefix is /usr/local/php/var
; Default Value: none
;pid = run/php-fpm.pid
pid文件路径应该位于/usr/local/php/var/run/php-fpm.pid,由于注释掉,所以没有生成,我们把注释去除,再kill -USR2 42891 重启php-fpm,便会生成pid文件,下次就可以使用以下命令重启,关闭php-fpm了:
php-fpm 关闭:
kill -INT 'cat /usr/local/php/var/run/php-fpm.pid'
php-fpm 重启:
kill -USR2 'cat /usr/local/php/var/run/php-fpm.pid'
网上搜到Nginx和PHP-FPM的启动、重启、停止脚本:>http://www.jb51.net/article/58796.htm
文章来源: