服务管理
systemctl status php7.4-fpm # /etc/init.d下可查看服务名称
重启fpm
ps aux|grep php-fpm|grep pool|awk ‘{print $2}’|xargs -I {} kill {} # 重启子进程
kill -USR2 master进程id # 表示重启php-fpm,其中USR2表示重载所有worker并解决载入配置和二进制模块
php.ini配置文件
php –ini 查看php配置目录及php.ini文件位置
memory_limit 只是限制了每个 PHP 进程的内存占用上限,而不是为每个进程分配了固定的内存
查看PHP-FPM在机器上的平均内存占用
1 | ps --no-headers -o "rss,cmd" -C php-fpm | awk '{ sum+=$1 } END { printf ("%d%s\n", sum/NR/1024,"M") }' |
Note:NR表行数
php-fpm配置文件
1 | 1.配置文件路径:/opt/php-7.3.11/etc/php-fpm.d/www.default.conf |
参考
https://www.php.net/manual/zh/install.fpm.configuration.php
PHP
PHP安装
cenots7安装php7.4
下载php包
1 | wget https://www.php.net/distributions/php-7.4.29.tar.gz |
解压
1 | tar -xvf php-7.4.29.tar.gz |
切换到目录
1 | cd php-7.4.29 |
提前安装依赖工具:
1 | yum -y install libxml2-devel openssl-devel sqlite-devel libcurl-devel libicu-devel gcc-c++ oniguruma oniguruma-devel libxslt-devel libpng-devel libjpeg-devel freetype-devel |
说明:
- 若出现
package not found
错误,那就可能需要更换yum源。
配置安装模块
1 | ./configure \ |
说明:
--prefix=/opt/php/php
指定php的安装位置--enable-fpm
加上这个选项,编译安装后的目录才会有fpm若遇到
(libpcre2-8 >= 10.30) were not met
问题,是因为模块--with-external-pcre --with-pcre-jit
用到了pcre2
若包不可下载,可前往
http://www.pcre.org/
下载
安装配置pcre2:
1 | https://sourceforge.net/projects/pcre/files/pcre2/10.34/pcre2-10.34.tar.bz2/download |
若遇到
(libcurl >= 7.15.5) were not met
1
yum install libcurl-devel
说明:若遇到
libcurl-devel
not found,可能需要添加yun源:1
2
3
4
5
6
7cd /etc/yum.repos.d
yum clean all # 清除缓存
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
sed -i 's/$releasever/7/g' ./CentOS7-Base-163.repo # 替换成7
yum makecache # 建立索引目录
yum install libcurl-devel若遇到
No package 'gdlib' found
1
2
3
4
5
6
7wget https://github.com/libgd/libgd/releases/download/gd-2.2.5/libgd-2.2.5.tar.gz
tar zxvf libgd-2.2.5.tar.gz
cd libgd-2.2.5
./configure
make
make install若遇到
GNU MP Library version 4.2 or greater required
,则:1
yum -y install gmp-devel
若遇到
No package 'libzip' found
,则:1
2
3
4
5
6wget https://libzip.org/download/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install
配置完成会看到以下界面
1 | ... |
编译和安装
1 | make && make install |
安装完成目录结构
1 | $ cd /opt/php/php |
编辑/etc/profile
,文件末尾添加
1 | PATH=$PATH:/opt/php/php/bin |
source /etc/profile
后即可使用php -v
等命令
安装之后的目录没有php.ini
,从之前用来安装php的源码包的根目录拷贝php.ini-production
到/opt/php/php/etc
目录,改名:
1 | mv php.ini-production php.ini |
php命令
1 | php --ini # 查看ini位置 |
给php-fpm建个软链
1 | ln -s /opt/php/php/sbin/php-fpm /usr/sbin/php-fpm |
配置php-fpm.conf文件
1 | cd /opt/php/php/etc |
1 | cd /opt/php/php/etc/php-fpm.d |
启动php-fpm服务
1 | php-fpm |
原文链接: https://chenqiaorui.github.io/2023/05/22/第29期:PHP-FPM/
版权声明: 转载请注明出处.