前言:本教程安装的PHP版本php-5.6.30(官方最后更新日期2017-01-19),教程编写日期2017-07-02。本教程中的下载地址是在写教程的时候从官方复制的,时间过长可能会有变化。

安装PHP的时候依赖好几个库 gd zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpnglibpng-devel,注意这些库你会发现好多库都对应的devel这是因为不带devel的是二进制文件,带devel的里面有头文件、格式之类的。如有时候你安装一些软件的时候提示你缺少openssl 当你yum安装上的时候,还是提示你缺少openssl ,这个时候你不要惊慌,习惯性的吧openssl-devel也装上往往就能解决了

1.安装依赖库。代码:yum install gd zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel直接回车一路y确认就行了

2.安装PHP从管网上下载地址http://cn2.php.net/get/php-5.6.30.tar.gz/from/this/mirror(如果没有找到中国的地址请刷新一下页面,有时候加载太慢没有出来,楼主就到过).下载到路径/usr/local/src

3.改名字文件名mirror 改成 php-5.6.30。代码:mv mirror php-5.6.30

4.解压,多出来一个php-5.6.30 目录,cd php-5.6.30

5.配置PHP,代码如下,当你想换行的时候千万不要直接回车,要打一个反斜线\ ,注意反斜杠\后面前面不要有空格

./configure --prefix=/usr/local/php5.6 \
--with-gd \
--enable-gd-native-ttf \
--enable-mysqlnd \
--with-mysql=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-openssl \
--enable-mbstring \
--enable-fpm

6.编译和安装。代码: make && make install 这个需要的时间长,请耐心等待.(注意中间有两个&符号,我第二次装的时候打了一个,然后报错libtool: link: `ext/opcache/zend_accelerator_debug.lo' is not a valid libtoo.....,然后一直安装不上,这个应该是破坏了你解压PHP中的文件(参考网址:http://blog.csdn.net/u012599988/article/details/44942223),然后我就删掉了重新解压了一下,然后重新配置PHP,编译和安装, 这个过程比较长.)

7.安装完成,提示如下.

Wrote PEAR system config file at: /usr/local/php5.6/etc/pear.conf
You may want to add: /usr/local/php5.6/lib/php to your php.ini include_path(注意这句话的意思是你可能需要在/usr/local/php5.6/lib/目录下添加php.ini文件)
/usr/local/src/php-5.6.30/build/shtool install -c ext/phar/phar.phar /usr/local/php5.6/bin
ln -s -f phar.phar /usr/local/php5.6/bin/phar
Installing PDO headers: /usr/local/php5.6/include/php/ext/pdo/

8.切换目录cd /usr/local/php5.6启动PHP。代码: ./sbin/php-fpm 这个时候出错了

第一行:ERROR: failed to open configuration file '/usr/local/php5.6/etc/php-fpm.conf': No such file or directory (2)

第二行: ERROR: failed to load configuration file '/usr/local/php5.6/etc/php-fpm.conf'

第三行:ERROR: ERROR: FPM initialization failed

9. 这个错误的意思是找不到在这个路径找不到配置文件/usr/local/php5.6.3--with-gd/etc/php-fpm.conf,这个时候你ls etc下面,发现有一个文件php-fpm.conf.default.这个是PHP自带的配置文件的例子,你直接复制一下改成错误提示的那个文件名字就行了.代码:cp etc/php-fpm.conf.default etc/php-fpm.conf

10.启动PHP。代码:./sbin/php-fpm 恭喜安装启动PHP成功了。

11.整合PHP和Nginx服务,打开/usr/local/nginx/conf/nginx.conf,在65-71之间有这么几句代码(显示行号vim命令模式set nu),一下代码加粗部分是需要改的,$DOCUMENT_ROOT就是代表服务的根目录.$fastcgi_script_name变量代表执行文件(例:a.php)

65 location ~ \.php$ {
66 root html;
67 fastcgi_pass 127.0.0.1:9000;
68 fastcgi_index index.php;
69 fastcgi_param SCRIPT_FILENAME $DOCUMENT_ROOT$fastcgi_script_name;
70 include fastcgi_params;
71 }

12.在/usr/local/nginx/html下面创建文件vim a.php,内容为<?php phpinfo(); ?> ,打开浏览器[http://你的ip/a.php],这个时候看第六行Configuration File (php.ini) Path对应的值是/usr/local/php5.6/lib ,紧挨着一下行Loaded Configuration File对应的值(none)。这说明PHP没有在咱们/usr/local/php5.6/lib目录下找到我们的PHP配置文件。不用怕我们的解压出来的文件里面就有,在/usr/local/src/php-5.6.30这个目录下面有两个php.ini-development和php.ini-production。php.ini-development适用于开发,错误会尽量多报。所以我们用这个。代码:cp /usr/local/src/php-5.6.30/php.ini-development /usr/local/php5.6/lib/php.ini

13.最后杀掉PHP重启一下,pkill -9 php,开启./sbin/php-fpm

14.打开浏览器[http://你的ip/a.php],大功告成!~!~!~

Linux配置LNMP环境(二)配置PHP的更多相关文章

  1. Linux配置LNMP环境(一)配置Nginx

    注意:配置版本nginx-1.12.0,使用虚拟机安装linux.教程中的下载地址可能有变化.注意(在您看本教程之前首先需要对linux的基本操作熟悉) 1.  先cd到/usr/local/src ...

  2. Linux配置LNMP环境(三)配置MySQL

    1.执行代码:cd /usr/local/rsc下载MySQL,我是从搜狐镜像上下载的:http://mirrors.sohu.com/mysql/MySQL-5.5/,我下载的是64位(注意)的,下 ...

  3. 新手配置LNMP环境教程

    回顾一下这几天自己配置LNMP环境踩得坑,希望帮助更多人 前期准备:VMtool.Linux.Nginx.Mysql.PHP.cmake 版本如下:Centos6.nginx1.6.0.mysql5. ...

  4. linux下Java环境的配置

    linux下Java环境的配置 现在用linux的朋友越来越多了,前几天就有两个朋友问我linux下怎么配置java环境,我想还有很多朋友想了解学习这方面的东西,就写一个完全一点的linux java ...

  5. Linux配置mysql (centos配置java环境 mysql配置篇 总结四)

    ♣安装的几种方法和比较 ♣配置yum源 ♣安装mysql ♣启动mysql ♣修改密码 ♣导入.sql文件 ♣缓存设置 ♣允许远程登录(navicat) ♣配置编码为utf8  1.关于Linux系统 ...

  6. Linux配置tomcat (centos配置java环境 tomcat配置篇 总结三)

    ♣下载安装tomcat7 ♣设置启动和关闭 ♣设置用户名和密码 ♣发布java web项目 声明:这篇教程是建立在前两篇教程的基础上的,所以,还没安装工具和jdk,可以先看这个系列的前面两篇(去到文末 ...

  7. LNMP笔记:阿里云32位 CentOS 5.4 配置 LNMP环境

    最近比较郁闷的是 WordPress大学 服务器故障,由于诸多原因没及时处理,导致10多天无法访问.倡萌也是刚接触服务器环境配置,维护的确力不从心,没办法排查出错误根源,所以只好重置系统盘,重新配置L ...

  8. 8.LNMP环境的配置

    LNMP环境的配置 参照文档:https://oneinstack.com/install/ 安装文件位置:/data/soft: ```yum -y install wget screen pyth ...

  9. linux下jdk环境变量配置深度分析----解决环境变量不生效的问题

    1.linux下jdk环境变量配置 是否需要配置环境变量,主要看java -version 显示的版本是否为你期望的版本 1.1 不需要配置环境变量的情况 使用java -version查看,版本显示 ...

随机推荐

  1. Visual Studio2017中如何让Entity Framework工具【ADO.NET实体数据模型】支持MYSQL数据源

    熟悉Entity Framework应该对以下图片不陌生,他就是ADO.NET实体数据模型向导:可以将数据库的表自动生成模型类,或者创建Code First的模型文件. 但是这个模型向导默认只显示微软 ...

  2. 第十五章(附)分布式缓存-Memcached

    一.概念 Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能. 二.适用场合 1.分布式应用.由于 ...

  3. ArrayList构造方法源码分析

    首先看一下无参的构造方法: private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}; transient Object ...

  4. DelayQueue使用

    假设现有如下的使用场景: a) 关闭空闲连接.服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之. b) 缓存.缓存中的对象,超过了空闲时间,需要从缓存中移出. c) 任务超时处理.在网络协议滑 ...

  5. python 集合相关操作

    集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...

  6. 页面中的平滑滚动——smooth-scroll.js的使用

    正常的本页面锚链接跳转的时候跟PPT似的,特别生硬,用户体验非常差. 这时候我们就可以借助smooth-scroll.js这个插件,来实现本页面的平滑的跳转. 1首先,导入必须的JS文件 <sc ...

  7. WEB前端:浏览器(IE+Chrome+Firefox)常见兼容问题处理--02

    兼容问题目录 8.IE6不支持固定定位 9.IE6下前面元素浮动,后面元素不浮动后他们之间会有间隙 10.IE6下双边距问题 11.IE67下父级有边框,子级有margin的话会不起作用 12.IE6 ...

  8. MySql的学习笔记

    良好的理解sql语句: 列:理解可以运算的成变量 where: 理解成表达式,放在行中看是否成立 查出来的结果可以当成一张表理解,select 套用select综合查询:   五种查询 where g ...

  9. 【基础】C#异常处理的总结

    一.异常处理的理解? 异常处理是指程序在运行过程中,发生错误会导致程序退出,这种错误,就叫做异常. 因此处理这种错误,就称为异常处理. 二.异常处理如何操作? C# 异常处理时建立在四个关键词之上的: ...

  10. Java(17)异常

    一.异常 1.1程序执行过程中出现的影响程序运行正常运行的现象.  1.2异常语法 try{ //代码块 }catch(异常类型 e){ }catch(异常类型 e){ }...{ }finally{ ...