Linux 下编译安装 PHP7

相关内容:
1. Linux 下编译安装 MySQL;
2. Linux 下编译安装 PHP7(本篇);
3. Linux 下编译安装 Nginx,以及 Nginx 和 PHP7 协同工作;
4. Linux 下编译安装 Apache;

下载 PHP 安装包:

cd /usr/local/src
wget https://www.php.net/distributions/php-7.2.18.tar.gz

解压到 src 目录:

tar zxvf php-7.2.18.tar.gz

解决依赖关系

  1. 加入第三方 yum 源:
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
  1. 安装依赖:
# CentOS
yum install -y libxml2 libxml2-devel libcurl libcurl-devel libwebp libwebp-devel \
libjpeg* libpng libpng-devel openldap openldap-devel openssl openssl-devel \
freetype-devel php-mcrypt libmcrypt libmcrypt-devel mcrypt mhash readline readline-devel -y

# Ubuntu
apt-get install -y libxml2 libjpeg-dev libpng-dev libfreetype6-dev \
libcurl4-openssl-dev openssl php-mcrypt mcrypt 
  1. 创建守护进程用户:
useradd -M -s /sbin/nologin www

PHP 编译安装(这里只是常用扩展,如果需要后期在安装扩展就行)

  1. 进入到源码目录:
cd /usr/local/src/php-7.2.18/
  1. 配置 makefile(此处将 mysql 编译进来了,需要保证 MySQL 已经安装好)
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc \
--with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql \
--with-mysql-sock=/tmp/mysql.sock --enable-sockets --enable-zip \
--with-fpm-user=www --with-fpm-group=www --enable-fpm --enable-gd-native-ttf \
--with-jpeg-dir --with-freetype-dir --with-gd --with-curl --with-curl --with-mcrypt --with-openssl \
--with-xmlrpc --enable-bcmath --enable-shmop --enable-sysvsem --enable-soap \
--enable-inline-optimization --enable-mbregex --enable-mbstring --enable-pcntl \
--enable-gd-jis-conv --enable-ftp --with-zlib --with-mhash
make
make install

接下去初始化配置

  1. 复制默认配置文件
cp php.ini-production /usr/local/php/etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/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
  1. 为启动脚本增加权限
chmod +x /etc/init.d/php-fpm
  1. 启动
/etc/init.d/php-fpm start
ps -ef | grep php
  1. 配置开机自动启动
# CentOS自动启动
chkconfig php-fpm on

# Ubuntu 自动启动
systemctl enable php-fpm

详细参数配置参考: http://php.net/manual/zh/install.fpm.configuration.php

接下去,配置 PHP 时区

vim /usr/local/php/etc/php.ini
/date
# 将下面
;date.timezone = 
# 改成
date.timezone = Asia/Shanghai

接下去,配置环境变量

vim /etc/profile.d/php.sh
  1. 写入环境变量
# 如服务器同时安装多个版本,文件夹取名追加版本号
export PHP_PATH=/usr/local/php	
export PATH=$PATH:$PHP_PATH/bin
  1. 生效
source /etc/profile.d/php.sh
  1. 查看下 PHP 版本,搞定!
php --version

别急,因为还没有安装 Nginx 配置 Web 服务,所以用内置的 PHP Web服务先测试下

cd /data/
mkdir php
cd php/
vim index.php

写入以下内容测试

<?php
header("Content-type:application/json;charset=utf-8");
$link = mysqli_connect('localhost', 'root', 'password', 'mysql', 3306);
if(!$link){
	echo "Error connecting!";
}else{
	echo "Success!";
}
mysqli_close($link);

开启 PHP 内置服务

php -S localhost:8888

同时另开一个窗口登录服务器后输入

curl localhost:8888

在这里插入图片描述
返回 Success!成功!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值