一、下载php源码下载地址:http://cn.php.net/downloads.php二、安装1、将下载的二进制包移动到/usr/local目录,解压缩文件包tar zxvf php-7.1.4.tar.gz2、进入解压的php文件夹下/usr/local/php-7.1.4,安装依赖,编...
一、下载php源码
下载地址:http://cn.php.net/downloads.php
二、安装
1、将下载的二进制包移动到/usr/local目录,解压缩文件包
tar zxvf php-7.1.4.tar.gz
2、进入解压的php文件夹下/usr/local/php-7.1.4,安装依赖,编译安装
yum install libxml2 libxml2-devel
./configure --prefix=/usr/local/php --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring --with-libdir=lib64 --without-pear --disable-phar
make
make test (编译完后可以允许一下make test命令,检测编译是否有问题)
make install
安装完成后的摘要信息:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
Installing PHP CLI binary: /usr/local/php/bin/
Installing PHP CLI man page: /usr/local/php/php/man/man1/
Installing PHP FPM binary: /usr/local/php/sbin/
Installing PHP FPM defconfig: /usr/local/php/etc/
Installing PHP FPM man page: /usr/local/php/php/man/man8/
Installing PHP FPM status page: /usr/local/php/php/php/fpm/
Installing phpdbg binary: /usr/local/php/bin/
Installing phpdbg man page: /usr/local/php/php/man/man1/
Installing PHP CGI binary: /usr/local/php/bin/
Installing PHP CGI man page: /usr/local/php/php/man/man1/
Installing build environment: /usr/local/php/lib/php/build/
Installing header files: /usr/local/php/include/php/
Installing helper programs: /usr/local/php/bin/
program: phpize
program: php-config
Installing man pages: /usr/local/php/php/man/man1/
page: phpize.1
page: php-config.1
Installing PDO headers: /usr/local/php/include/php/ext/pdo/
3、php配置
#php的配置文件为 php.ini
cp /usr/local/php-7.1.4/php.ini-production /usr/local/php/lib/php.ini
#使得另一种方法来管理服务:
cp /usr/local/php-7.1.4/sapi/fpm/php-fpm /etc/init.d/php-fpm
#添加执行权限
chmod +x /etc/init.d/php-fpm
#php-fpm的配置文件
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
根据机器配置修改php-fpm进程数最大限制,这限制在/usr/local/php/etc/php-fpm.d/www.conf里面
使用 netstat -napo |grep "php-fpm" | wc -l 查看一下当前fastcgi进程个数,如果个数接近conf里配置的上限,就需要调高进程数。
但也不能无休止调高,可以根据服务器内存情况,可以把php-fpm子进程数调到100或以上,在4G内存的服务器上200就可以。
pm.max_children = 200
pm.start_servers = 10
pm.min_spare_servers = 8
pm.max_spare_servers = 12
4、设置环境变量
vi /etc/profile
打开后,在文档最下方添加如下配置:
export PATH=/usr/local/php/bin:$PATH
:wq!保存退出,执行如下命令,使更改生效
source /etc/profile
5、启动php测试
#启动
/etc/init.d/php-fpm
#测试php
cd /usr/local/nginx/html
vi test.php
添加如下内容:
<?php
echo phpinfo();
?>
:wq!保存退出。
浏览器输入:http://10.62.32.123/test.php
如果出现:PHP Version 7.1.4 界面,显示php详细的配置的界面,说明安装正确
6、php重启、停止
php 7.1.4 源码中已经内嵌了 php-fpm,只需要在configure的时候添加编译参数即可。
关于php-fpm的编译参数有 –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent位置。
但是,php 7.1.4 下的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:
master进程可以理解以下信号:
SIGINT, SIGTERM 立刻终止
SIGQUIT 平滑终止
SIGUSR1 重新打开日志文件
SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块
示例:
php-fpm 关闭:
kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`
php-fpm 重启:
kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`
查看php-fpm进程数:
ps aux | grep -c php-fpm
netstat -anpo | grep "php-cgi" | wc -l
netstat -anop | grep "php-fpm" | wc -l
三、附录
php编译选项相关说明:
./configure --prefix=/usr/local/php \ #指定安装目录
--with-config-file-path=/usr/local/php/etc \ #指定配置文件的目录,默认在php/lib下满\
--enable-fpm \启用php的fpm
--enable-mbstring \ 启用多字节字符串支持
--with-libdir=lib64 \
--without-pear \禁用pear扩展
--disable-phar \ 禁用pear扩展的phar函数库
--enable-mysqlnd \ 启用php的mysql驱动
--with-mysqli=mysqlnd \ 指定mysql
--with-pdo-mysql=mysqlnd \指定mysql
本文标题为:linux下php源码安装步骤
基础教程推荐
- PHP命名空间简单用法示例 2022-12-01
- php array分组,PHP中array数组的分组排序 2022-08-01
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- PHP中的错误及其处理机制 2023-06-04
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- 使用PHP开发留言板功能 2023-03-13
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12