centos源码安装php(全网最新版!)

第一步:

1.1:
下载源码包
可以去官方网站,也可以扫码文末的公众号回复"php",即可获得与本文中相同版本的PHP源码包,我已经帮大家下载好了
在这里插入图片描述

1.2:
解压源码包,代码如下:

1. tar -zxvf php-7.4.8.tar.gz

在这里插入图片描述



第二步:安装依赖环境及安装php

2.1:
安装依赖环境

1. yum install -y libxml2*  
2. yum install -y openssl*
3. yum install -y libcurl*
4. yum install -y libjpeg*
5. yum install -y libpng*
6. yum install -y freetype*
7. yum install -y libmcrypt*


2.2:
添加用户组及用户,代码如下:

创建用户组 groupadd www
添加新用户进入用户组 useradd -g www www 第一个为用户组 第二个为新用户


2.3:
安装php,指定安装目录和模块(在解压目录下进行),代码如下:
–prefix=/usr/usrsevice/php7.4 --with-config-file-path=/usr/usrsevice/php7.4/etc
以上两段代码后的路径为你要想要安装php的路径,如果没有,就得先创建路径

./configure --prefix=/usr/usrsevice/php7.4 --with-config-file-path=/usr/usrsevice/php7.4/etc --enable-inline-optimization --disable-debug --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-rpath --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl  --with-mhash --with-pcre-regex --with-zlib --enable-bcmath --with-bz2 --enable-calendar --with-curl --enable-exif --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-mbstring --with-onig --enable-shared --enable-opcache --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-readline --with-iconv --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets  --enable-zip --enable-wddx --with-pear

安装php遇到的报错问题解决方案

报错一:
报错信息:CONFIGURE: ERROR: PACKAGE REQUIREMENTS (SQLITE3 > 3.7.4) WERE NOT MET: NO PACKAGE ‘SQLITE3’ FOUND**
解决办法,代码如下:

1. yum install sqlite-devel


报错二:
报错信息:PHP 编译错误 Package requirements (oniguruma) were not met**
解决办法,代码如下:

1. sudo yum install oniguruma-devel

报错三:
报错信息:
cc: internal compiler error: Killed (program cc1)**
原因:内存不足,解决方法:可以设置临时设置交换分区

1.sudo dd if=/dev/zero of=/swapfile bs=64M count=16
2.sudo mkswap /swapfile
3.sudo swapon /swapfile

编译完成,可以取消交换分区

 sudo swapoff /swapfile
 sudo rm /swapfile

如有其他报错信息,原因也是依赖包不全,可自行搜索解决,这里就不一一列举,

2.3:
进行编译安装,代码如下:

1. make                ##编译
2. make test           ##测试编译是否成功
3. make install        ##安装


第三步:PHP设置环境变量并启动PHP

3.1:
编辑/etc/profile文件,加入以下代码:

1. export PATH="/usr/usrsevice/php7.4/bin":$PATH  ##PATH为php安装路径


3.2:
启动PHP,进入php安装目录下的sbin目录内,执行以下代码:

1.  ./php-fpm   ###不要忘记这个点哦~

在这里插入图片描述
可以使用以下命令查看php是否成功启动

1. ps -ef |grep php

在这里插入图片描述
一键点亮~


启动PHP可能遇到的问题

启动php-fpm可能会遇到的错误,基本都是配置文件配置和重命名的问题:

错误一:
WARNING: Nothing matches the include pattern /usr/local/php/etc/php-fpm.d/*.conf 原因:缺少www.conf配置文件,解决方法如下:

1. 需要把/usr/local/php/etc/php-fpm.d/*.conf目录中的www.conf.default重命名为www.conf。


错误二:缺少php-fpm.conf配置文件,解决方法如下:

2. 需要在/usr/local/php/etc/php-fpm.conf 把默认的配置文件php-fpm.conf.default改成php-fpm.conf


错误三:缺少php.ini配置文件,解决方法如下:

3. php7编译安装好后会发现没有php.ini配置文件,需要在解压包的根目录中复制php.ini-production或php.ini-development并重命名为php.ini到php编译好的安装目录中的/usr/local/php/etc文件夹即可。


第四步:把PHP设置为系统服务

4.1:
其实到第三步我们已经可以成功启动PHP了,但是为了方便管理,我们可以把PHP设置系统服务

4.2:
进入/usr/lib/systemd/system目录下,新建php.servcie文件,文件内容如下:

[Unit]
Description=php
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm    ##这里为php安装路径

[Install]
WantedBy=multi-user.target

4.3:
通过系统命令管理PHP,代码如下:

1.systemctl status php;  ##查看php状态

2.systemctl start php;    ##启动php服务

3.systemctl enable php;   ##设置php为开机自启

4.systemctl disable php;   ###关闭php开机自启
    

扫码关注公众号,每天都有满满的干货输出哟~公众号回复’php’即可获得文中所使用的php源码包,我已经帮大家下载好了,需要的自取.
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/csdn18740599042/article/details/107527551