一.简介

PHP官方网站: http://php.net

本次安装的版本: php-5.4.13

二.下载, 安装PHP

[root@caiya software]# wget http://museum.php.net/php5/php-5.4.13.tar.gz

[root@caiya software]# tar zxvf php-5.4.13.tar.gz

[root@caiya software]# cd php-5.4.13

# PHP 常用安装选项解释

# PHP安装路径

--prefix=/usr/local/php

# mysql安装路径

--with-mysql=/usr/local/mysql

# 支持openssl

--with-openssl

# mbstring库,Multi-Byte String即各种语言都有自己的编码

--enable-mbstring

# 支持freetype功能, 可移植的自由的字体库

--with-freetype-dir

# 支持图片

--with-jpeg-dir

# 支持图片

--with-png-dir

# 通用格式的压缩库, 先压缩再传送, 节省带宽

--with-zlib

# xml语言库的路径

--with-libxml-dir=/usr

# 支持xml

--enable-xml

# 让php支持sockets通讯

--enable-sockets

# 支持mcrypt方式加密

--with-mcrypt

# PHP配置文件的存放目录

--with-config-file-path=/etc

# 压缩库

--with-bz2

# 让PHP支持php.d目录的配置文件

--with-config-scan-dir=/etc/php.d

# 用mysqli方式连接mysql

--with-mysqli=/usr/local/mysql/bin/mysql_config

# 将PHP编译成apache的模块(重点)

--with-apxs2=/usr/local/apache/bin/apxs

# 取决于apache的mpm的类型.

# 如果使用prefork就不需要开启此项, 如果是work, evevt则要开启此项

# 如果是线程方式工作, 必须要开启此项

--enable-maintainer-zts

# 配置安装选项之前先查看httpd工作模式, 再决定特殊选项

# 如: --enable-maintainer-zts

[root@caiya bin]# pwd

/usr/local/apache-2.4/bin

[root@caiya bin]# ./apachectl -M | grep mpm

21: mpm_event_module (shared)

[root@caiya bin]#

# 当前event模式(正是我们实验环境需要的模式)

# 如果是prefork模式,需要修改httpd的配置文件

# httpd的配置文件路径: /etc/httpd/httpd.conf

# 演示修改配置文件, 需要什么模式, 去掉前面的#号, 注释掉原有的模式

# 修改完成后, 保存, 重启httpd服务.

[root@caiya /]# vim /etc/httpd/httpd.conf

LoadModule mpm_event_module modules/mod_mpm_event.so

#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

#LoadModule mpm_worker_module modules/mod_mpm_worker.so

[root@caiya bin]# ./apachectl restart

# 此处修改方法基于apache.2.4.x的版本

# 配置PHP选项

[root@caiya php-5.4.13]# ./configure \

--prefix=/usr/local/php \

--with-mysql=/usr/local/mysql \

--with-openssl \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--enable-mbstring \

--with-freetype-dir \

--with-jpeg-dir \

--with-png-dir \

--with-zlib \

--with-libxml-dir=/usr \

--enable-xml \

--enable-sockets \

--with-apxs2=/usr/local/apache-2.4/bin/apxs \

--with-mcrypt \

--with-config-file-path=/etc \

--with-config-file-scan-dir=/etc/php.d \

--with-bz2 \

--enable-maintainer-zts

#配置的时候, 需要安装以下三个包:

libmcrypt-2.5.8.tar.gz

mhash-0.9.9.9.tar.gz

mcrypt-2.6.8.tar.gz

1.安装 libmcrypt-2.5.8.tar.gz

[root@caiya software]# tar zxvf libmcrypt-2.5.8.tar.gz

[root@caiya software]# cd libmcrypt-2.5.8

[root@caiya software]# ./configure

# 常见错误一:

configure: error: C++ compiler cannot create executables

# 解决办法:

shell> yum install gcc-c++ -y

# 继续配置

[root@caiya software]# make

[root@caiya software]# make install

2.安装 mhash-0.9.9.9.tar.gz

[root@caiya software]# tar zxvf mhash-0.9.9.9.tar.gz

[root@caiya software]# cd mhash-0.9.9.9

[root@caiya software]# ./configure

[root@caiya software]# make && make install

3.安装 mcrypt-2.6.8.tar.gz

[root@caiya software]# tar zxvf mcrypt-2.6.8.tar.gz

[root@caiya software]# cd mcrypt-2.6.8

[root@caiya software]# ./configure LD_LIBRARY_PATH=/usr/local/lib

[root@caiya software]# make && make install

# 继续配置

# 配置的时候常见报错

# 报错一:

configure: error: xml2-config not found. Please check your libxml2 installation.

[root@caiya software]# yum install libxml2 -y

[root@caiya software]# yum install libxml2-devel -y

# 报错二:

configure: error: Please reinstall the BZip2 distribution

[root@caiya software]# yum install bzip2 -y

[root@caiya software]# yum install bzip2-devel -y

# 报错三(64位操作系统):

configure: error: mysql configure failed. Please check config.log for more information

# 配置成功, 编译, 安装

[root@caiya php-5.4.13]# make && make install

# 此到PHP已经安装完成

三.配置 PHP

# php的安装目录在: /usr/local/php

# php的配置文件需要手动去创建, php编译目录里面有两个配置文件:

php.ini-development  开发环境

php.ini-production  生产环境

# 我们这里选择"生产环境"的配置文件并将php.ini-production复制到/etc/下命名为php.ini

[root@caiya php-5.4.13]# cp php.ini-production /etc/php.ini

# 此时需要修改httpd的配置文件, 让httpd以模块的方式加载PHP

[root@caiya php-5.4.13]#vim /etc/httpd/httpd.conf

# 让httpd能解析index.php的文件

# 搜索 DirectoryIndex 定位到 DirectoryIndex index.html, 并且添加index.php

DirectoryIndexindex.php index.html

# 以模块的方式加载PHP

# 搜索 AddType 定位到 AddType application/x-gzip .gz .tgz, 在其下面添加一条规则

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

AddType application/x-httpd-php .php

php5.4.13.tar.bz2,编译安装PHP-5.4.13相关推荐

  1. linux下php-5.4.8.tar.gz编译安装全攻略

    首先安装基础依赖组建,注:这些依赖组建也是LINUX+PHP+MYSQL+APACHE+NGINX+MEMCACHED时必要的系统组件  LANG=C yum -y install gcc gcc-c ...

  2. php-5.2.3.tar.bz2.gz 的解压方法

    php-5.2.3.tar.bz2.gz  的解压方法 [root@jock99 jock22]# gunzip php-5.2.3.tar.bz2.gz [root@jock99 jock22]# ...

  3. php5.4.41 绿色_编译安装PHP5.4.41

    一.部署LAMP环境,安装顺序 二.编译.安装php 三.安装xcache,为php(opcode)加速 四.其他 一.部署LAMP环境,安装顺序 编译安装部署LAMP环境,安装顺序 3.编译安装ph ...

  4. centos 6 mysql 5.7.13 编译安装_Centos 6.5系统下编译安装PHP 7.0.13的方法

    PHP7.0正式版也出来了,今天编译安装了一下,写下安装步骤,我是在centos6.6 环境中编译的,下面是详细的安装步骤 环境依赖 yum install gcc gcc-c++ libxml2 l ...

  5. mysql5.1编译安装centos7_CentOS7下 Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装

    在CentOS7下 Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装过程记录. 一.安装Nginx 1.安装依赖扩展 # yum -y install wget ...

  6. php5.4dev版本是,ubuntu 编译安装php5.4以上版本

    先安装必须的依赖库: sudo?apt-get?-y?install?autoconf??\ sudo?apt-get?-y?install?libxml2-dev??\ sudo?apt-get?- ...

  7. centos 6 mysql 5.7.13 编译安装_Centos 6.5 下面 源码编译 安装 Mysql 5.7.13

    安装软件依赖包 yum -y install gcc gcc-c++ ncurses ncurses-devel cmake 下载软件包 cd  /usr/local/src wget https:/ ...

  8. mac php5.6 gd 扩展,mac 编译安装php5.6.40

    准备 MAC环境mac mojave 10.14.1 Homebrew 2.0.1-25-g4550f70 mac item下使用brew管理依赖可以说是不二选了,可是最新的brew upgrade已 ...

  9. mysql5.7源码安装 简书_在CentOS7上编译安装MySQL 5.7.13步骤详解

    MySQL 5.7主要特性 更好的性能 对于多核CPU.固态硬盘.锁有着更好的优化,每秒100W QPS已不再是MySQL的追求,下个版本能否上200W QPS才是用户更关心的. 更好的InnoDB存 ...

最新文章

  1. pcf8574c语言测试程序,PCF8563驱动程序(C语言版)
  2. 迷你世界电锯机器人_迷你世界:会旋转的机器人,安装多个火箭炮,全方位轰炸敌人...
  3. 【机器学习】一文解决样本不均衡(全)
  4. [HNOI2013]比赛 搜索
  5. 2017.9.13 序列维护 思考记录
  6. 董明珠:格力100%不会爆雷 爆雷的白马股不是真正白马股
  7. Photoshop 2020 for Mac(PS 2020)中英双版
  8. 云智能,助力警务大数据云平台建设
  9. 【2018焦作网络赛】Strings and Times(出现次数在[L,R]的子串数目---后缀数组+st表)
  10. Xshell5 破解
  11. [转载]U盘文件夹乱码无法删除的原因及解决方案
  12. 股票交易费用精确计算器
  13. 运输计划 洛谷P2680
  14. 大屏需要JAVA什么技术_前端之大屏
  15. 为什么建议向你的同事屏蔽朋友圈?
  16. Elasticsearch概念
  17. 多商家入驻分销平台基本功能设计
  18. wordcloud:利用fontawesome字体绘制图标词云图
  19. 基于Android的车位共享系统的设计
  20. 基于DM6467的TVP7002 Linux驱动程序开发

热门文章

  1. Intel 64/x86_64/IA-32/x86处理器 - 通用指令(9/E) - 比特位操控指令(BMI1 BMI2)
  2. java 指代对象_06JAVA面向对象之封装
  3. Unreal Engine 4 —— 使用反汇编来确定该进行优化的地方
  4. Stm32之通用定时器复习
  5. mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?...
  6. shell与export命令
  7. 精益 React 学习指南 (Lean React)- 4.1 react 代码规范
  8. 寒假集训日志(二)——最小生成树,拓扑排序,欧拉回路,连通路
  9. 在 Docker Machine 中使用 Mirror 服务
  10. android开发中eclipse里xml开发的自动提示和使用帮助快捷键提示