编译 PHP7.0为什么那么慢,CentOS 7编译安装php7.0.7以及可能遇到的问题的解决方案...
#CentOS 7编译安装php7.0.7
下载并解压php
编译安装
修改配置文件
启动服务
过程中可能遇到的问题解决
1.下载并解压php
####下载地址
http://cn2.php.net/distributions/php-7.0.7.tar.gz
####存放下载目录
cd /harddisk/Downloads
wget http://cn2.php.net/distributions/php-7.0.7.tar.gz
#等待下载完成后解压
tar -zxvf php-7.0.7.tat.gz
2.编译安装
###1、安装依赖包
# yum -y install libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel openldap-devel libmcrypt-devel
###2、对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
cd php-7.0.7
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-zlib --enable-pdo --with-pdo-mysql --enable-opcache
以上部分配置说明:
–prefix=/usr/local/php #表示php安装目录
–with-iconv=/usr/local #libiconv可能需另外安装
–with-mysql=/usr/local/mysql
–with-mysqli=/usr/local/mysql/bin/mysql_config #这是mysql的安装目录和配置
###3、编译(必须在以上操作没有出错再进行)
make
###4、安装
make install
3.修改配置文件
###1、配置php-fpm.conf(php-fpm 进程服务的配置文件)
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
#修改
pid = tmp/php-fpm.pid(启动时如果报错可能需要手动创建tmp文件夹)
###2、配置www.conf(php-fpm 进程服务的扩展配置文件)
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
vim www.conf
#设置用户和用户组为www
user = www
group = www
#如果没有对应用户组,需先创建(已经存在则忽略)
groupadd (用户组)
useradd -g (用户组) (用户)
###3、从下载php解压文件夹复制php.ini-development到/usr/local/php/etc下,并改名为php.ini
###4、php快捷方式,在/usr/local/bin创建软链接php/bin和php/sbin
cd /usr/local/bin/
ln -s /usr/local/php/bin/* .
ln -s /usr/local/php/sbin/* .
4.启动服务
###1、创建服务启动脚本
cd /usr/lib/systemd/system
vim php-fpm.service
#输入以下内容
[Unit]
Description=php
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
[Install]
WantedBy=multi-user.target
#保存退出
:wq
###2、启动服务
systemctl start php-fpm.service
关于启动服务的可以查看http://blog..net/chenxiabinffff/article/details/51374635
5.过程中可能遇到的问题解决
###1、安装libiconv
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar -zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local
make
make install
###2、安装libiconv过程中make出错
cd srclib/
sed -i -e '/gets is a security/d' ./stdio.in.h
cd ../
make
###3、PHP编译时错误:Don’t know how to define struct flock on this system, set --enable-opcache=no
解决方法是:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib/
(注意,如果是64位的系统,应该软链接到/usr/lib64/目录下。并且,第二个有可能不是libmysqlclient.so.20,最后两位数有可能是其他,根据mysql的版本而变化)
还有一种可能是/usr/local/lib下的库文件没有加载,可如下操作:
vim /etc/ld.so.conf.d/local.conf # 编辑库文件(该文件可能不存在,不存在则创建一个新的)
/usr/local/lib # 添加该行
/usr/local/lib64 # 64位系统的除了添加上一行,还需要添加此行
:wq # 保存退出
ldconfig -v # 使之生效
编译 PHP7.0为什么那么慢,CentOS 7编译安装php7.0.7以及可能遇到的问题的解决方案...相关推荐
- CentOS 7 Linux 安装PHP7.2.12 - 编译安装
CentOS 7 Linux 安装PHP7.2 - 编译安装 1 安装扩展包并更新系统内核 [root@iz28snxdn5mz ~]# yum install epel-release -y [ro ...
- owncloud php7.3,CentOS 7 x64安装ownCloud9.0.3
CentOS 7 x64安装ownCloud9.0.3 需要的材料和条件: 1.CentOS 7 x64镜像 下载地址:https://www.centos.org/download/ 2.ownCl ...
- Centos 7.5 安装Zabbix4.0
Centos 7.5 安装Zabbix4.0 一.参考链接 zabbix官方安装文档:https://www.zabbix.com/cn/download zabbix官方产品文档:https://w ...
- CentOS 7下安装Tomcat8.0.53并设置自动启动:
CentOS 7下安装Tomcat8.0.53步骤: 在官网下载8.0.53版本 https://tomcat.apache.org/download-80.cgi 用ftp工具把压缩包上传到/usr ...
- CENTOS 7 YUM 安装PHP7.4
CENTOS 7 YUM 安装PHP7.4 1.安装remi扩展源 yum install epel-release yum install http://rpms.remirepo.net/ente ...
- centos系统yum安装php7.0
1.更新yum源 centos7: rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rp ...
- CentOS 7 完美安装redis-5.0.5
记录下自己安装redis过程,算是个笔记吧,以后会用到. 准备条件 因为我虚拟机环境没有联网,所以需要提前准备好redis包. 一开始用的是redis 6+版本,安装后解压发现系统的gcc版本太低,无 ...
- CENTOS MINI版安装tomcat9.0
由于是mini版,基础环境什么都没有,适合快速搭建服务器环境,避免安装其他软件导致互相干扰 咱们先从安装JDK做起 输入java -version 显示不识别java命令,说明jdk没有装 输入wge ...
- 【Centos】CentOS7 安装 JDK11.0.3
CentOS7 安装 JDK11.0.3 JDK 各个版本下载地址 下载 JDK 到本地 上传到服务器/usr/local文件夹 解压 tar -zxvf jdk-11.0.3_linux-x64_b ...
最新文章
- 在很多很多事情都要的情况下,最重要的东西是什么?
- 怎么发一篇IEEE文章呢?
- Keil uvision 4 MDK 安装教程附免费安装包资源
- yolo算法_吴恩达深度学习笔记(100)-目标检测之YOLO 算法讲解
- 图像分类数据库_图像分类器-使用僧侣库对房屋房间类型进行分类
- 第一人称视角获得运动方向和视角的夹角
- 阿里二面:RocketMQ同一个消费组内的消费者订阅量不同tag,会有问题吗?
- 雷军再失猛将!小米12号创始员工离职 曾一起喝粥创立小米
- apache启服务命令_linux系统下apache服务的启动、停止、重启命令
- Command对象应用--增加问卷调查
- 公司搞不好,除了坑股东,还坑的是客户
- sosoapi 项目之本地搭建
- html5 for vs2008插件,Chart 控件 for vs2008的安装
- java动态时钟_Java实现动态模拟时钟
- less css基础教程
- 苹果计算机如何显示错误,科普电脑打开苹果手机视频教程及Apple ID验证失败发生未知错误怎么解决...
- Java NIO 通道(二)通道分散/聚集
- socket的基本使用
- 从“扫月亮”到“扫福字”,扒一扒背后的支付宝AR框架体系
- oracle使用小技巧,Oracle在linux下使用小技巧
热门文章
- js 校验验证码 知识点
- Asp.net中服务端控件事件是如何触发的(笔记)
- js 页面history.back()返回上一页,ios 不重新加载ready的解决办法
- AE开发中关于 “无法嵌入互操作类型.........请改用适用的接口”问题的解决方法...
- Android开发六 电话拔号器
- git 服务器+git linux客户端搭建测试2
- 【大型网站技术实践】初级篇:海量图片的分布式存储设计与实现
- 如何使用Linux的Crontab定时执行PHP脚本的方法
- div置于页面底部_网易内部PPT模板有点丑,如何花最少的时间提高页面颜值?
- 概要设计实例_尽可能通用的运维CMDB的设计与实践