`
wecoo
  • 浏览: 85422 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux PHP的安装

阅读更多
2. 红帽Linux PHP
2.1. 安装linux PHP

查看系统是否自带了php,若自带先卸载,否则安装后会出错。
(1)下载php源文件php-5.3.6.tar.gz,地址为http://cn2.php.net/downloads.php
(2)执行如下命令,解压源文件,以默认方式安装php
tar zxvf php-5.3.6.tar.gz
cd php-5.3.6
./configure --prefix=[php安装目录] --with-config-file-path=[php安装目录] --with-apxs2=[apache安装目录]/bin/apxs
make
make install

(3) 另一种安装方式是在系统中已经安装了apache、gd库的情况下,安装时希望把这些软件编译到php中。
      安装gd库需要jpeg、png等,jpeg的主要文件有jpeglib.h, libjpeg.a, libjpeg.so等。首先检查系统中安装了没有,到/usr/include目录下看有无jpeglib.h,到/usr/lib目录下看有无 libjpeg.a和libjpeg.so,若没有则需要先安装jpeg。要查看gd是否安装,GD的主要文件有gd.h, libgd.a等,安装完成后,/usr/local/include目录下查看有无gd.h,若没有则需要统一安装gd库,安装gd请参照2.5
      在64位系统下还需要运行下面两句命令,来覆盖掉原有的/usr/lib/libjpeg.so和/usr/lib/libpng.so:
ln -s /usr/lib64/libjpeg.so.62.0.0  /usr/lib/libjpeg.so 
ln -s /usr/lib64/libpng.so.3.10.0  /usr/lib/libpng.so 
tar zxvf php-5.3.6.tar.gz
cd php-5.3.6
./configure --with-config-file-path=[php安装目录] --prefix=[php安装目录] --with-bz2 --enable-zip --enable-mbstring --with-apxs2=[apache安装目录]/bin/apxs --with-zlib-dir=/usr/include/ --with-libxml-dir=/usr/lib64/ --with-gd --with-jpeg-dir=/usr/ --with-png-dir=/usr/ --with-freetype-dir=/usr/ --enable-soap --enable-calendar 
make
make install

(4) 将php-5.3.6目录中的php.ini-development(若是开发环境建议用php.ini-development,若是生产或测试环境建议用php.ini-production)文件复制到php安装目录,并重命名为php.ini

2.2. 修改apache配置
   以上步骤操作成功后会在2.1的(3)步骤的命令中“--with-apxs2”指定的apache的modules文件夹生成libphp5.so,修改apache的httpd.conf文件,添加如下内容:
LoadModule php5_module modules/libphp5.so
PHPIniDir [php.ini所在目录]
AddType application/x-httpd-php .php

   若“ LoadModule php5_module modules/libphp5.so ”已存在,则不需添加。
找到默认文件,在其后添加默认文件index.php和index.php3:
<IfModule dir_module>
       DirectoryIndex index.html index.php index.php3
</IfModule>

安装完成后在htdocs目录下,新建一个PHP文件如:
vim test.php
   <?php
   phpinfo();
   ?>

然后在IE中访问:http://机器名或IP/test.php。若PHP列表页面出现则安装成功。
2.3. 安装扩展模块
      php中一般需要追加编译curl、mbstring和mcrypt,若系统中安装了数据库mysql则还需要追加mysql、pdo和pdo_mysql,若页面提示"Couldn't locate driver named mysql”,则多半是因为没有追加pdo_mysql的缘故。
      在追加mcrypt时可能会提示缺少libmcrypt,这时需要自己下载安装libmcrypt,最好安装最新版本的,本例中用libmcrypt-2.5.8.tar。

下面以追加mbstring模块为例,其他模块的方式相同。
方式一:初始编辑安装
   进入php-5.3.6目录,执行如下命令:
./configure --prefix=[php安装目录] --with-config-file-path=[php安装目录] --with-apxs2=[apache安装目录]/bin/apxs --enable-mbstring=shared
make
make install

方式二:追加编译安装
   进入php-5.3.6/ext/mbstring目录,执行如下命令:
  
[php安装目录]/bin/phpize
./configure --with-php-config=[php安装目录]/bin/php-config --with-mbstring
make
make install

   安装成功后会在“[php安装目录]/lib/php/extensions/no-debug-non-zts-20060613”目录下生成mbstring.so文件,在php安装路径下新建ext目录,cp mbstring.so [php安装路径]/ext/
然后修改php.ini文件,添加如下内容:
extension = mbstring.so
extension_dir = "[php安装路径]/ext"

   若extension_dir = "[php安装路径]/ext"在php.ini存在,则不需添加。
   安装其它扩展模块的命令都一样,只将mbstring换成对应的模块名即可。
安装libmcrypt
tar zxvf libmcrypt-2.5.8.tar.gz 
cd libmcrypt-2.5.8/
./configure
make
make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install

ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

2.4. 添加数据库支持
(1)mysql数据库(以mysql-5.5.8-1及64位机器为例)
查看系统是否自带了mysql,若自带先卸载,否则安装后会出错
(1.1)安装以下mysql包:
MySQL-client-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-devel-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-shared-community-5.1.44-1.rhel5.x86_64.rpm
MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm

例子:rpm -ivh MySQL-client-community-5.1.44-1.rhel5.x86_64.rpm
(1.2)安装完MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm后,记住下面提供的文件路径
[root@bogon mysql]# rpm -ivh MySQL-shared-compat-5.1.44-1.rhel5.x86_64.rpm
Preparing...       ########################################### [100%]
    file/usr/lib64/libmysqlclient.so.16.0.0from install of MySQL-shared-compat-5.1.44-1.rhel5.x86_64 conflicts with file from package MySQL-shared-compat-5.1.44-1.rhel5.x86_64
    file/usr/lib64/libmysqlclient_r.so.16.0.0from install of MySQL-shared-compat-5.1.44-1.rhel5.x86_64 conflicts with file from package MySQL-shared-compat-5.1.44-1.rhel5.x86_64
cp -rp/usr/lib64/libmysqlclient_r.so.16.0.0 /usr/lib/libmysqlclient.so

   PS:在64位计算机上安装时,需将“/usr/lib64”目录下的“libmysqlclient.so.[版本号]”(如libmysqlclient_r.so.16.0.0)文件复制到“/usr/lib”目录,并去调版本号。(注:安装高版本时可能不出现提示,但也要进行复制这一步)
若需要数据库的服务器则还需要安装MySQL-server-community-5.1.44-1.rhel5.x86_64.rpm,且server放在最后安装。
修改数据库root用户的秘密:/usr/bin/mysqladmin -u root password 'new-password'
(1.3) 进入php-5.2.9/ext/mysql目录,执行如下命令(PDO和PDO_mysql的追加相同):
[php安装目录]/bin/phpize
./configure --with-php-config=[php安装目录]/bin/php-config --with-mysql
make
make install

(1.4)安装完成后会生成一个mysql.so的文件
[root@bogon mysql]# make install
Installing shared extensions:  /opt/php/lib/php/extensions/no-debug-non-zts-20060613/
[root@bogon mysql]# cd  /opt/php/lib/php/extensions/no-debug-non-zts-20060613/  
[root@bogon no-debug-non-zts-20060613]# ll
total 156
-rwxr-xr-x 1 root root 148709 Jun  9 17:57mysql.so

   在php安装目录新建ext目录如:/opt/php/ext。将mysql.so文件复制到此目录下,   如:cp /opt/php/lib/php/extensions/no-debug-non-zts-20060613/mysql.so /opt/php/ext/
(1.5)修改php.ini文件加载mysql组件,添加extension_dir=/opt/php/ext和extension=mysql.so,如果有extension_dir=/opt/php/ext则不需要增加
; extension folders as well as the separate PECL DLL download (PHP 5).
; Be sure to appropriately set the extension_dir directive.
;
extension_dir=/opt/php/ext
extension=mysql.so
;extension=php_bz2.dll
;extension=php_curl.dll

(1.6) 验证是否安装成功
   再次在IE中访问:机器名或IP/test.php 搜索mysql,出现mysql组件即表示成功,其它组件一样。(启动mysql:/etc/init.d/mysql start)

(2) oracle数据库(以oracle 10g及64位机器为例)
(2.1) 解压安装oracle客户端instantclient,配置$ORACLE_HOME环境变量,进入[oracle安装路径]目录,执行如下命令创建文件链接:
ln -s libclntsh.so.10.1 libclntsh.so
ln -s libocci.so.10.1 libocci.so

(2.2) 可2.6中说明的“初始编译安装”或“追加编译安装”,为./configure命令追加--with-oci8=instantclient,[oracle安装路径]
(2.3) 若为“追加编译安装”,则会生成oci8.so文件,将该文件放到php.ini中extention_dir所指定的目录,然后在php.ini文件加上extention=oci8.so

2.5. 添加gd支持
向php添加gd库的详细说明及gd的安装步骤,详见http://wecoo.iteye.com/blog/1158858
添加gd支持有两种方式,一种是系统自带有gd时,可以用初始安装的方式,见2.1的(3);另一种是安装gd第三方插件,操作步骤如下:

(1) 下载下列包:
   jpegsrc.v6b.tar.gz
   libpng-(version).tar.gz
   freetype-(version).tar.gz
   gettext-(version).tar.gz
   gd-(version).tar.gz

(2) 安装jpeg-6b(支持jpeg):
(2.1) 执行如下命令创建目录:
mkdir -p [jpeg-6b安装目录]
mkdir -p [jpeg-6b安装目录]/bin/
mkdir -p [jpeg-6b安装目录]/lib/
mkdir -p [jpeg-6b安装目录]/include/
mkdir -p [jpeg-6b安装目录]/man/
mkdir -p [jpeg-6b安装目录]/man/man1/

(2.2) 解压jpegsrc.v6b.tar.gz
(2.3) 进入[jpeg-6b解压目录],执行如下命令,替换文件:
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .

(2.4) 进入[jpeg-6b解压目录]执行如下命令安装jpeg-6b:
./configure --prefix=[jpeg-6b安装目录] --enable-shared --enable-static
make
make install

(3) 安装libpng(支持png):
   解压libpng-(version).tar.gz,进入[libpng解压目录]执行如下命令安装libpng:
./configure --prefix=[libpng安装目录] --enable-shared --enable-static
make
make install

(4) 安装freetype:
   解压freetype-(version).tar.gz,进入[freetype解压目录]执行如下命令安装freetype:
./configure --prefix=[freetype安装目录]
make
make install

(5) 安装gettext(安装gd可能需要):
   解压gettext-(version).tar.gz,进入[gettext解压目录]执行如下命令安装gettext:
./configure --prefix=[gettext安装目录]
make
make install

(6) 安装gd:
   解压gd-(version).tar.gz,进入[gd解压目录]执行如下命令安装gd:
./configure --prefix=[gd安装目录] --with-jpeg=[jpeg-6b安装目录] --with-png=[libpng安装目录] --with-freetype=[freetype安装目录] --with-gettext=[gettext安装目录]
(如./configure --prefix=/opt/gd-2.0.35 --with-jpeg=/opt/jpeg-6b/ --with-png=/opt/libpng-1.2.35/ --with-freetype=/opt/freetype-2.3.5/ --with-gettext=/opt/gettext-0.17/)
make
make install

安装时如果出现
configure.ac:64: error: possibly undefined macro: AM_ICONV
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.

   查看/usr/lib目录下的libattr.a是不是灰色的,没有权限。如果是输入以下命令
   chmod 777 libattr.a
(7) 将gd添加到php
(7.1) 初始编译安装
   编译php时,向./configure命令追加如下内容--with-jpeg=[jpeg-6b安装目录] --with-png=[libpng安装目录] --with-freetype=[freetype安装目录] --with-gettext=[gettext安装目录] --with-gd=[gd安装目录]
(如./configure --with-config-file-path=/opt/php --prefix=/opt/php --with-bz2 --enable-zip --enable-mbstring --with-apxs2=/opt/apache2/bin/apxs --with-zlib-dir=/usr/include/ --with-libxml-dir=/usr/lib64/ --with-jpeg-dir=/opt/jpeg-6b --with-png-dir=/opt/libpng-1.2.35 --with-freetype-dir=/opt/freetype-2.3.5 --with-gettext=/opt/gettext-0.17 --with-gd=/opt/gd-2.0.35 --enable-soap --enable-calendar)
具体步骤参照2.1的(3)
(7.2) 追加编译安装
   进入“[php解压目录]/ext/gd”目录,执行如下命令:
   [php安装目录]/bin/phpize
./configure --with-php-config=[php安装目录]/bin/php-config --with-jpeg=[jpeg-6b安装目录] --with-png=[libpng安装目录] --with-freetype=[freetype安装目录] --with-gettext=[gettext安装目录] --with-gd=[gd安装目录]
make
make install

安装成功后会在“[php安装目录]/lib/php/extensions/no-debug-non-zts-20060613”目录下生成gd.so文件,
   然后cp [php安装目录]/lib/php/extensions/no-debug-non-zts-20060613/gd.so /opt/php/ext

(7.3) 修改php.ini文件加载gd组件,添加extension_dir=/opt/php/ext和extension=gd.so,如果有extension_dir=/opt/php/ext则不需要增加
extension_dir=/opt/php/ext
extension=gd.so

   修改php.ini文件,操作同2.3的方式二。
若追加编译不成功,则用初始编译,参照2.1的(3)
2.6. 添加soap支持   cd php-5.1.6/ext/soap
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config –enable-soap
make
make install

   编译后的soap.so文件保存在了/usr/local/php/lib/php/extensions/no-debug-non-zts-20050922目录下
   修改php.ini文件
   extension=soap.so
3. 参考资料
gd介绍
http://wecoo.iteye.com/blog/1158858
pdo介绍:
http://www.phpchina.com/html/36/9136-8584.html
linux环境php安装:
http://blog.chinaunix.net/u/19637/showart_489123.html
http://blog.chinaunix.net/u/16215/showart_438082.html
http://www.freeplug.org/blog/read.php?81
分享到:
评论
1 楼 xu-zhx 2012-02-13  
赞,写的真详细

相关推荐

    linux下安装apache+php+mysql的最简步骤

    在Linux系统中,构建一个基于Apache、PHP和MySQL的服务器环境,通常被称为LAMP(Linux、Apache、MySQL、PHP)架构。这是一种常见的Web开发平台,适用于动态网站和应用程序的部署。下面将详细介绍如何在Linux环境下...

    linux php 所支持的安装文件:libpng

    linux php安装所需要的支持安装文件:jpegsrc, freetype-2.3.9, gd-2.0.35, libxml2-2.6.32, libpng-1.2.37 zlib-1.2.3等(分别上传,都有)

    LINUX下安装PHP的oci8和PDO_OCI扩展包

    至此,您已经在Linux系统上成功安装了oci8和PDO_OCI扩展,可以使用PHP连接和操作Oracle数据库了。请确保根据您的实际环境(如PHP版本和数据库版本)调整上述步骤,并检查是否有其他依赖项需要安装。如果在安装过程中...

    php6的linux版安装程序

    7. **安装PHP**:如果测试没有问题,使用`make install`来将PHP安装到指定的目录: ``` sudo make install ``` 8. **更新环境变量**:为了让系统能找到新安装的PHP,你可能需要更新`PATH`环境变量。在`~/.bashrc...

    php7.1.8版本,适用linux centos安装可以

    php7.1.8版本,适用linux centos安装可以

    Linux服务器安装PHP MongoDB扩展的方法

    Linux环境:CentOS 6.5 Apache版本:2.4 PHP版本:5.4.3 MongoDB版本:2.6.5 一、下载Mongo-php扩展安装包 可以从Github上面下载,地址是https://github.com/mongodb/mongo-php-driver-legacy 下载好的文件放到随意...

    Linux下PHP及组件的安装

    在Linux环境下,安装PHP及其组件是一项重要的任务,尤其对于那些需要构建Web服务器并处理动态内容的用户来说。本文将详细阐述如何在Linux系统上安装PHP以及一些常用的组件,如GD库、Curl库等。 首先,确保Apache ...

    阿里云linux一键安装web环境

    它通常涉及Apache或Nginx Web服务器、PHP解释器、MySQL或MariaDB数据库等组件的安装,这些组件构成了常见的LAMP(Linux、Apache、MySQL、PHP)或LNMP(Linux、Nginx、MySQL、PHP)架构,是搭建网站和服务的基础。...

    php-7.4.22.tar PHP安装包for Linux

    在Linux上安装PHP 7.4.22的步骤通常包括以下几个关键部分: 1. **更新系统**: 在开始安装前,确保你的Linux系统已经更新到最新状态,这可以通过运行`sudo apt-get update`(对于基于Debian的系统)或`sudo yum ...

    Linux下安装配置 Apache2.2.x+MySql5.x+PHP5.x 详解

    Linux 下安装配置 Apache2.2.x+MySql5.x+PHP5.x 详解 本篇文章详细介绍了在 Linux 操作系统下安装和配置 Apache2.2.x、MySql5.x 和 PHP5.x 的步骤,使用的操作系统为 Redhat AS5,内核版本为 Linux 2.6.18-8.el5,...

    phporacle扩展linux下php安装oracle扩展

    在Linux环境下为PHP安装Oracle扩展是一项常见的任务,特别是在需要与Oracle数据库进行交互的Web应用程序中。Oracle数据库以其稳定性、安全性和高性能而闻名,因此许多企业选择它作为后端存储。PHP作为广泛使用的...

    linux上安装备份

    在Linux系统中,安装MySQL数据库并进行有效快速的备份是管理员必须掌握的重要技能。这篇教程将针对Linux初学者,详细讲解如何安装MySQL,以及如何备份数据库和Web服务,确保数据安全。 首先,让我们开始MySQL的安装...

    Linux下安装Apache+PHP+MySql搭建PHP运行环境

    Linux下安装Apache+PHP+MySql搭建PHP运行环境 Linux 下安装 Apache+PHP+MySql 搭建 PHP 运行环境是 Web 开发中最常用的解决方案之一。通过本教程,我们将指导您一步步搭建一个完整的 PHP 运行环境,包括安装 ...

    php扩展源代码包--V8JS引擎

    Google Chrome开源项目独立的Javascript编译引擎V8,V8在运行之前将JavaScript编译成了机器码,而非字节码或是直译它,以此提升性能。更进一步,使用了如内联缓存(inline caching)等方法来提高性能。...

    Linux下Apache+PHP+Mysql安装与配置

    Linux 下 Apache+PHP+Mysql 安装与配置 Apache installation * 介绍 Apache 的安装过程,包括卸载原有 Apache 用户、解压缩 Apache 源代码、配置和安装 Apache。 * "--prefix" 参数用于指定安装后的存放路径;"--...

    Linux安装PHPRedis扩展

    在本文中,我们将详细介绍如何在Linux环境下,特别是Red Hat 4.8.5系统上,为PHP 7.0版本安装PHPRedis扩展,并与Apache 2.4配合使用。 首先,确保你已经安装了Redis服务器。如果还没有,可以通过以下命令安装: ``...

    在linux下面安装apache、mysql、php

    在Linux环境下搭建Web服务,通常涉及Apache(HTTP服务器)、MySQL(数据库服务器)和PHP(脚本解释器)的安装与配置。以下将详细介绍如何在Linux系统中安装这三款软件,以及解决可能出现的问题。 首先,我们来看...

    linux上安装php5+apache+mysql

    ### Linux上安装PHP5+Apache+MySQL #### 一、安装MySQL 在Linux环境中搭建一个完整的LAMP(Linux, Apache, MySQL, PHP)环境时,MySQL作为数据库管理系统是不可或缺的一部分。下面详细介绍如何在Linux上安装MySQL...

    linux下php安装配置教程.docx

    ### Linux下PHP安装配置教程详解 #### 一、系统及软件要求 为了确保Apache、PHP以及MySQL能够顺利地安装和配置,在开始之前,请确保满足以下系统及软件要求: 1. **操作系统**: 本教程适用于Red Hat 7.2版本。...

    Linux环境Nginx安装与调试以及PHP安装

    Linux 环境 Nginx 安装与调试以及 PHP 安装 Linux 环境 Nginx 安装与调试是指在 Linux 操作系统中安装和配置 Nginx 服务器的过程。Nginx 是一款流行的开源 Web 服务器软件,可以作为 HTTP 服务器、反向代理服务器、...

Global site tag (gtag.js) - Google Analytics