1. 云栖社区>
  2. PHP教程>
  3. 正文

Linux上编译安装PHP

作者:用户 来源:互联网 时间:2017-12-01 17:21:57

编译

Linux上编译安装PHP - 摘要: 本文讲的是Linux上编译安装PHP, Linux上编译安装PHP,有需要的朋友可以参考下。 之前在服务器上编译安装了PHP运行环境,但是安装完过了一段时间就差不多忘记了,只是零零星星记得一些简单步骤,现在又重新在新的服务器上安装了一遍,将安装过程记录下来,方便以后查看,同时也

Linux上编译安装PHP,有需要的朋友可以参考下。


之前在服务器上编译安装了PHP运行环境,但是安装完过了一段时间就差不多忘记了,只是零零星星记得一些简单步骤,现在又重新在新的服务器上安装了一遍,将安装过程记录下来,方便以后查看,同时也提供给新手做个参考。

1. 首先要下载PHP的源码安装包,可以到PHP官网下载http://php.net/,进入官网后点击导航栏的“Downloads”选项,即可计入下载页面,这时候你可以根据地区选择下载的服务器,这里我选用 cn2.php.net 下载

2. 下载完成后使用常用的ftp工具将源码包上载到要安装PHP的服务器上,这里我们暂放在 /tmp 目录下

(注:也可以在Linux下直接使用Linux 文件下载工具wget 进行下载,形式为wget -O php-5.6.15.tar.gz http://cn2.php.net/get/php-5.6.15.tar.gz/from/this/mirror,此处应该使用-O 对下载的文件进行命名,否则下载的文件名称将为“mirror”,另外,还可以使用搜狐的镜像地址下载http://mirrors.sohu.com/php/***)

3. 解压该压缩文件

# tar -zxf php-5.6.15.tar.gz

4. 上一步产生 php-5.6.15 目录,进入该目录,执行该目录下的 configure 可执行文件(其中/在Linux命令中代表换行),安装前必须先安装MySQL及其他一些扩展库才行,具体可以根据安装过程的报错信息补充没有安装的拓展

#./configure /
--prefix=/usr/local/php-5.6.15 /
--with-config-file-path=/usr/local/php-5.6.12/etc /
--with-mysqli /
--with-xmlrpc /
--with-openssl /
--with-zlib /
--with-freetype-dir /
--with-png-dir /
--with-jpeg-dir /
--with-gd /
--with-iconv=/usr/local/libiconv /
--enable-sockets /
--enable-zend-multibyte /
--enable-soap /
--enable-mbstring /
--enable-static /
--enable-gd-native-ttf /
--with-mcrypt /
--with-mhash /
--with-curl /
--with-xsl /
--enable-ftp /
--with-libxml-dir /
--enable-pcntl /
--enable-bcmath /
--enable-fpm

相对应的解释如下:
--prefix=/usr/local/php-5.6.15 / (指定PHP的安装目录)
--with-apxs2=/usr/sbin/apxs / (使PHP支持Apache服务器,使用yum安装Apache时,apxs默认在usr/sbin/目录下)
--with-config-file-path=/usr/local/php-5.6.12/etc / (指定PHP的配置文件php.ini目录)
--with-mysqli[=DIR] / (指定mysqli的安装路径,使PHP支持mysqli,PHP最新版本已经不再支持mysql扩展了)
--with-xmlrpc / (使PHP支持XML-RPC,即XML远程方法调用)
--with-openssl / (使PHP编译安装openssl模块,加密传输https时用到的)
--with-zlib[=DIR] / (配置gd库的支持包zlib,zlib是提供数据压缩用的函式库)
--with-freetype-dir[=DIR] / (配置gd库的支持包freetype,FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎)
--with-png-dir[=DIR]/ (配置gd库的支持包libpng)
--with-jpeg-dir[=DIR] / (配置gd库的支持包libjpeg)
--with-gd/ (静态编译gd库)

--with-iconv=/usr/local/libiconv / (iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件)
--enable-sockets / (打开对socket的支持)
--enable-zend-multibyte / (支持zend的多字节)
--enable-soap / (打开对soap的支持,简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML的协议,它被设计成在WEB上交换结构化的和固化的信息)
--enable-mbstring / (打开对多字节多字符串的支持)
--enable-static / (生成静态链接库,在编译过程中,就将静态库中的代码载入程序,由此生成出的可执行程序在运行中不再需要静态库,但因为库中的程序代码被复制进目标程序中,因此生成的程序体积会比较大)
--enable-gd-native-ttf / (支持TrueType字符串函数库)

--with-mcrypt / (mcrypt算法扩展)

--with-mhash / (mhash算法扩展)
--with-curl / (打开curl浏览工具的支持)
--with-xsl / (打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件)
--enable-ftp / (打开对ftp的支持)
--with-libxml-dir / (打开libxml2库的支持)
--enable-pcntl / (扩展可以支持php的多线程操作)
--enable-bcmath / (打开图片大小调整,用到zabbix监控的时候用到了这个模块)
--enable-fpm (打开对php-fpm的支持)

(注:上述为编译安装的配置选项相对比较完整,可以选择性配置,但也有一些配置选项没有给出,另外,由于php已经集成GD库,但前提是支持包应事先安装,如zlib, png, jpeg, freetype等)

5. 针对上述安装过程中出现的报错,找出未安装的扩展,使用yum或下载源码包进行手动编译安装进行安装后再重新编译安装PHP

6. PHP安装完成,运行PHP环境即可。


版权声明:本文为博主原创文章,未经博主允许不得转载。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索编译 ,以便于您获取更多的相关知识。