PHP的安装同样需要经过环境检查、编译和安装3个步骤。

1.首先用百度搜索 “PHP:Downloads”, 点击第一个网页:

选择5.5.37版本,选择 .tar.gz 格式的文件:

来到镜像列表网站:http://php.net/get/php-5.6.23.tar.gz/from/a/mirror

找到中国的镜像,点击,会弹出浏览器下载的对话框。在对话框中,有下载的地址信息:

在CentOS7 命令行里输入:

wget http://cn2.php.net/distributions/php-5.5.37.tar.gz

下载完成:

2. 编译源码并安装

(i) ./configure 命令

进入 ~/Downloads/php-5.5.37 目录,输入

[root@localhost:~/Downloads/php-5.5.37] # ./configure  --prefix=/usr/local/php  --with-mysql=/usr/local/mysql  --enable-fpm

结果出现错误:

网上搜解决方案,说是要安装 libxml2:

[root@localhost:~/Downloads/php-5.5.37]# yum install -y libxml2
[root@localhost:~/Downloads/php-5.5.37]# yum install -y libxml2-devel

安装 libxml2 正常,但是安装 libxml2-devel 却显示如下错误:

将软件源从 aliyun 的源更新为 163 的源,还是不行。想起来之前备份了安装 CentOS时自带的源文件,便 cd 到 /etc/yum.repos.d 目录,恢复原始的源文件 CentOS-Base.repo,接着更新cache:

yum clean all
yum makecache

然后再下载 libxml2-devel

yum install -y libxml2-devel

成功!

再去 ./configure,这次参考了网上其他人的安装经验,改正了 ./configure 的参数,另外,使用

find / -name "libxml2"

命令查到 'yum install -y libxml2' 命令将 libxml2安装在了 '/usr/include/libxml2'

新的 ./configure 命令如下:

[root@localhost:~/Downloads/php-5.5.37]# ./configure  --prefix=/usr/local/php \
> --enable-fpm \
> --with-config-file-path=/usr/local/php/etc \
> --with-apxs2=/usr/local/apache2/bin/apxs \
> --with-mysql=/usr/local/mysql \
> --with-libxml-dir=/usr/include/libxml2 \
> --with-mysqli=/usr/local/mysql/bin/mysql_config \
> --enable-soap \
> --enable-mbstring=all \
> --enable-sockets

configure 结果如下:

成功!

(ii) make & make test & make install

make

make test

好长一段时间后:

make install

安装成功。

3. 配置Apache与PHP关联

(i) ‘vim /usr/local/apache2/conf/httpd.conf’ ,查找有没有这么一条配置指令:

LoadModule  php5_module        modules/libphp5.so

没有的话则自行添加这么一条配置指令。

(ii) 在 <IfModule mime_module> 段落中添加

AddType application/x-httpd-php  .php
AddType application/x-httpd-php-source .phps

(iii) 在<IfModule dir_module>段落中添加

DirectoryIndex  index.php  index.html

这样浏览器访问该改服务器的主页时,默认会先解析 index.php 文件,如果没有 index.php 文件,再解析 index.html 文件。

(iv) 输入如下命令查看Apache配置是否正确,如果正确,则重启Apache服务器:

apachectl -t
#如果返回 Syntax OK,则输入如下重启命令 apachectl restart

4. 创建 index.php 文件

(i) 之前安装Apache软件的时候,在 httpd.conf 里默认配置的本机文件根目录为 '/usr/local/apache2/htdocs':

安装Apache成功后,默认在 htdocs 文件夹下已经生成了 index.html 文件,现在在里面重新添加 index.php 文件:

[root@localhost:/usr/local/apache2/htdocs]# vim  index.php

index.php 文件内容如下:

<?php
phpinfo();
?>

(ii) 然后在宿主机浏览器中输入虚拟机的IP地址进行访问:

成功!!!!! ---------喜悦~~~~~~~~~~~~~~~~~~

可以看到 phpinfo() 函数返回的页面中的信息正是配置和安装PHP软件时使用的参数的信息。

  • 首先打开终端。

    yum install php php-devel 输入确认安装,等待20秒左右及安装成功。

     
  • 2

    安装php常用扩展(可选,根据自己实际需求)

    yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

     
  • 3

    重启apache使php生效

    apachectl restart

     
  • 4

    测试php环境

    在/var/www/html目录(Apache默认根目录)中新建info.php

    vi /var/www/html/info.php

    文件内容

    <?php phpinfo(); ?>

    访问http://localhost/info.php

     
  • 5

    附加:mysql测试(未安装需要安装)

    在/var/www/html目录(apache默认根目录)中新建mysql.php

    vi /var/www/htmml/mysql.php

    文件内容

    <?php$con = mysql_connect("localhost","root","root");

    if (!$con)  {  die('Could not connect: ' . mysql_error());  }

    mysql_select_db("mysql", $con);

    $result = mysql_query("SELECT * FROM user");

    while($row = mysql_fetch_array($result))  {  echo $row['User'] . " " . $row['Host'];  echo "<br />";  }

    mysql_close($con);

    ?>

     
  • 6

    访问http://localhost/mysql.php即可查看数据库信息。

     
    END

centos安装配置php的更多相关文章

  1. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  2. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  3. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  4. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  5. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

  6. 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

    阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...

  7. 阿里云服务器Linux CentOS安装配置(四)yum安装tomcat

    阿里云服务器Linux CentOS安装配置(四)yum安装tomcat 1.yum -y install tomcat  执行命令后,会帮你把jdk也安装好 2.tomcat安装目录:/var/li ...

  8. 阿里云服务器Linux CentOS安装配置(三)yum安装mysql

    阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...

  9. 阿里云服务器Linux CentOS安装配置(二)yum安装svn

    阿里云服务器Linux CentOS安装配置(二)yum安装svn 1.secureCRT连接服务器 2.先创建一个文件夹,用来按自己的习惯来,用来存放数据 mkdir /data 3.yum安装sv ...

  10. 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器

    阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 我在阿里云购买的服务器配置 CPU:1核 内存:2G 系统盘:40G 公共镜像:CentOS 6.5 64位 公网带宽:1Mbps ...

随机推荐

  1. java获取本机mac物理地址

    package com.simonjia.util.other; import java.net.InetAddress;import java.net.InterfaceAddress;import ...

  2. 【南工程开源计划】南京工程学院 信息与通信工程学院 课程设计说明书(论文) 宽带接入技术--WLAN接入设计

    文章目录 蓝奏云文件存放地址 一.课程设计目的 二.课程设计要求 三.课程设计网络环境 四.课程设计内容 4.1 WLAN接入设计 4.1.1设计拓扑 4.1.2设计原理 1)WLAN 2)RADIU ...

  3. .net 查壳工具

    请问大神.NET查壳工具都有哪些? 已知的有DotNet Id    除了这个还有别的吗?脱MAXTOCODE发现是双壳.脱掉第一层还有一层,DotNet Id检测没壳了,但是反编译还是加密状态. 用 ...

  4. Sql语法树示例 select username, ismale from userinfo where age > 20 and level > 5 and 1 = 1

    select username, ismale from userinfo where age > 20 and level > 5 and 1 = 1 --END-2019年9月5日17 ...

  5. 生成ip地址表的不同姿势--脚本生成和echo命令生成

    前段时间参加了几个线下的靶机攻防比赛,几十个队伍,如果攻击的时候一个个攻击就非常麻烦,浪费时间.所以需要批量攻击.批量攻击就需要一个完整的ip地址表.在这里总结一下... 有不足的地方欢迎评论 一.脚 ...

  6. Zabbix - 配置服务器对第三方服务的监控

    需求: 需要配置zabbix监控,使得zabbix服务器可以监控到另一台服务器上运行的第三方服务的状态,当状态异常时发送告警邮件. 限制:被监控的服务器不允许安装任意客户端,且该台服务器不能联通外网 ...

  7. AndroidManifest.xml中的<uses-feature>以及和<uses-permission>之间的联系

    概述:<uses-feature>用来声明应用中需要用的硬件和软件的功能. 硬件特性:表明您的应用需要用的硬件功能. 功能类型 特征描述 描述 音频 android.hardware.au ...

  8. 自由度为n的卡方分布χ²(n)的期望等于n、方差等于2n的证明

    出自:http://blog.sina.com.cn/s/blog_4cb6ee6c0102xh17.html

  9. 在Excel工作表单元格中引用当前工作表名称

    在Excel工作表单元格中引用当前工作表名称 有多份Excel表格表头标题都为"××学校第1次拉练考试××班成绩表",由于工作表结构都是一样的,所以我每次都是复制工作表然后编辑修改 ...

  10. robotframework-requests--中文注解版

    最近工作原因在研究RobotFramework对REST测试的方案,找到几个相关类库.但使用requests感觉更方便,研究了一下requests类库的源码,并将注释换成中文为方便使用.关于Reque ...