Chinaunix首页 | 论坛 | 博客
  • 博客访问: 717429
  • 博文数量: 288
  • 博客积分: 3124
  • 博客等级: 中校
  • 技术积分: 5196
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-24 23:42
个人简介

Bomi

文章存档

2015年(1)

2013年(1)

2012年(283)

2008年(3)

分类: Python/Ruby

2012-02-05 11:41:50

The Underground PHP and Oracle® Manual (Chinese Translation Ed.) , Release 1.0, Mar 2009.
 Copyright © 2009, The e. Publishing Dept. of Morpho Studio (Spruce Int. Found.® ) All rights reserved.

第七章 安装PHP

这一章讨论在LinuxWindows 系统上安装PHP的方法。在其他的系统比如SolarisMac OS X上安装PHP的方法与Linux上的安装方法类似。

本章内容已涵盖安装PHP会遇到的主要问题。你可能会遇到其他问题,需要组合以下的多个步骤来解决。

在安装PHP前,必须首先安装Apache HTTP 服务器,并保证您网络中数据库能够够被正常访问。


linux上随PHP安装OCI8

以下步骤假设您使用Oracle 企业Linux 5,并且且Apache http 软件包已经被安装和使用。 当然,如何你已经手工安装Apache /usr/local/apache目录,你可以使用/usr/local/apache/bin/下的apachectl 命令来启动和关闭ApacheAPXS实用工具也位于目录/usr/local/apache/bin/中,相应的Apache配置文件默认为/usr/local/apache/conf/httpd.conf ,相应的Apache模块默认位于/usr/local/apache/modules目录中。

运行PHP 时,我们使用的Oracle 库文件版本与在编译、构建PHP时所用的一致!

使用本地数据库安装OCI8

要在Oracle 企业Linux上的本地数据库中安装OCI8,您需要使用root用户登录系统。以下为具体安装步骤:

1. 关闭Apache HTTP服务器:

# /usr/sbin/apachectl stop

2. http://www.php.net/downloads.php下载PHP 5.2.7

3. root用户登录并解压缩下载得到的PHP源代码文件压缩包:

# tar -jxf php-5.2.7.tar.bz2

# cd php-5.2.7

如果你下载的是.tar.gz文件,使用tar -zxf.命令来解压缩。

4. 配置 PHP OCI8:

# export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server

# ./configure \

> --with-apxs2=/usr/sbin/apxs \

> --with-oci8=$ORACLE_HOME \

> --enable-sigchild

这里export ORACLE_HOME 语句中要使用正确的Oraclw 软件安装路径,你可以从 /etc/oratab文件中获得此路径。

如果你已经安装了自己的Apache,使用正确的路径来指定Apache 扩展工具,例如: /usr/local/apache/bin/apxs如果你使用Apache 1.3 而非Apache 2,使用-apxs 替换这里的-apxs2选项。

备注:PHP 5.2.4 默认忽略拼写错误的选项名,但是如果无法找到Oracle软件,configure (配置程序)会失败。在继续之前,请检查configure输出,确认“checking for Oracle (OCI8) support” 一行被标记为 “Yes”.

configure命有其他一些具体选项和扩展可用。可以使用 configure –-help 命令来列出这些选项。

5. Make & install PHP:

# make

# make install

6. 复制PHP提供的初始化文件file php.ini-recommended 到系统lib目录。可以在命令行使用PHP命令的-ini选项来显示当前php.ini配置文件所在的目录。

# php --ini

Configuration File (php.ini) Path: /usr/local/lib

Loaded Configuration File: (none)

Scan for additional .ini files in: (none)

Additional .ini files parsed: (none)

这里显示的目录为 /usr/local/lib复制上述文件到此目录:

# cp php.ini-recommended /usr/local/lib/php.ini

7. 为了便于测试,编辑 php.ini 文件设置打开display_errors 这样你就可以方便得看到代码中存在的问题。在你将应用程序提供给用户使用前,请确保将此设置改回off.

8. 编辑Apache配置文件 /etc/httpd/conf/httpd.conf 并加入以下语句:

#

# This section will call PHP for .php, .phtml, and .phps files

#

AddType application/x-httpd-php .php

AddType application/x-httpd-php .phtml

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

9. 如果PHP安装程序没有添加 LoadModule 配置语句,同样手工进行添加:

LoadModule php5_module /usr/lib/httpd/modules/libphp5.so

10. 设置任何所需的Oracle 环境变量,比如 ORACLE_HOME, LD_LIBRARY_PATH

NLS_LANG. (参见章节“使用OCI8连接到Oracle”中为Apache设置Oracle环境变量的相关内容)

11. 重新启动Apache:

# /usr/sbin/apachectl start 


使用Oracle 即时客户端安装OCI8

Oracle 软件包中链接了PHP. 如果数据库主机上没有安装PHP,你可以使用被称为Oracle即时客户端的一小组软件包。

Oracle即时客户端安装OCI8 的步骤如下:

1. 关闭Apache:

# /usr/sbin/apachectl stop

2. http://www.php.net/downloads.php下载PHP 5.2.7

3. root用户登录并解压缩下载得到的PHP源代码文件压缩包:

# tar -jxf php-5.2.7.tar.bz2

# cd php-5.2.7

如果你下载的是.tar.gz文件,使用tar -zxf.命令来解压缩。Extract the PHP source code:

4. OTN Oracle 即时客户端页面下载基本的和SDK 即时客户端程序包的RPMZIP文件:

http://www.oracle.com/technology/tech/oci/instantclient/instantclient.htm l

两个程序包大小合计41MB。 甚至更小的基本建兴包可

     
取代基本法,如果不考虑字符集和错误消息的语言限制对您的应用程序影响,你甚至可以只下载更小的Oracle即时客户端的轻量级基础程序包来代替基础程序包。

5. 如果你下载的是RPM文件,使用root用户安装这些RPM软件包:

# rpm -Uvh oracle-instantclient11.1-basic-11.1.0.7.0-1.i386.rpm

# rpm -Uvh oracle-instantclient11.1-devel-11.1.0.7.0-1.i386.rpm

第一个 RPM会将Oracle 软件包安装到/usr/lib/oracle/11.1/client/lib 目录中,第二个会将相应的头文件存放到:/usr/include/oracle/11.1/client.目录中。

如果你使用ZIP 文件,将其解压缩到你期望的目录中,例如:$HOME/instantclient_11_1. BasicSDK 的文件应该会一起被解压,所以本来中SDK的文件解压后应该在$HOME/instantclient_11_1/sdk.目录下。

6. 如果通过ZIP文件来安装即使客户端,需要创建一个全局链接:

# cd $HOME/instantclient_11_1

# ln -s libclntsh.so.11.1 libclntsh.so

7. 配置PHP:

# cd php-5.2.7

# ./configure \

> --with-apxs2=/usr/sbin/apxs \

> --with-oci8=instantclient,/usr/lib/oracle/11.1/client/lib \

> --enable-sigchild

如果你使用ZIP文件,则更改--with-oci8 选项为解压后文件所在的目录:

--with-oci8=instantclient,$HOME/instantclient_11_1

如果你在64位的Linux上使用RPM安装的即时客户端,则使用:

--with-oci8=instantclient,/usr/lib/oracle/11.1/client64/lib

8. 重新构建PHP:

# make

# make install

9. 复制PHP提供的初始化文件:

# cp php.ini-recommended /usr/local/lib/php.ini

10. 设置任何所需的Oracle 环境变量,比如 ORACLE_HOME, LD_LIBRARY_PATH

NLS_LANG. (参见章节“使用OCI8连接到Oracle”中为Apache设置Oracle环境变量的相关内容)

11. 重新启动Apache:

# /usr/sbin/apachectl start


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 蝴蝶
13th,Apr.2009 11:30 pm GMT+1 最后更新

Copyright © 2009,The e. Publishing Dept. of Morpho Studio (Spruce Int. Found.® ) All rights reserved.

阅读(842) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册