您准备好开始使用 PHP 和 Oracle 数据库对话吗?下面我们演示将 Oracle 数据库、Apache HTTPD 服务器,以及 PHP 作为一个 Apache 模块安装到 Linux 上所需的步骤。在这个例子中,我们将使用 Windows 2000
软件需求 软件 版本 URL
Oracle RDBMS 9.2 /software/products/oracle9i/index.html
Apache HTTPD Server 1.3.28 http://httpd.apache.org/download.cgi
PHP - PHP 超文本处理器 4.3.2 http://www.php.net/downloads.php
安装 Oracle
您有两种选择。您既可以把数据库本地安装在 Windows 机器上,或者也可以决定使用您网络中另外一台机器上的 Oracle 服务器。如果您的数据库是远程的,那么只需要在这个机器上安装 Oracle 客户端。如果您的数据库是本地的,那么需要安装完整的 Oracle RDBMS Server。
安装 Apache HTTP Server
在 Windows 上安装 Apache 最简单的办法是下载 Apache HTTP Server 的 Microsoft Software Installer (MSI) 程序包,例如 apache_1.3.28-win32-x86-no_src.msi。要安装此机器,您只需双击此文件并遵循向导的说明。我在 D:\ApacheHTTP 目录下安装了Apache,但任何目录(甚至在 Program Files 的默认位置)都能正常工作。
启动 Apache
您既可以从 command shell 启动 Apache,也可以将其作为服务进行安装。在测试时我通常从命令行启动和终止 Apache。
D:\ApacheHTTPD\Apache>start Apache.exe
您还将看到新命令行外壳打开时显示下列消息:
Apache/1.3.28 (Win32) PHP/4.3.2 running...
现在您应该测试 Apache 是否在机器上正常启动和运行,测试方法是打开您的 web 浏览器连接到 URL http://localhost
注意:如果您使用防火墙或者如果 localhost 由于某些原因无法解析,可能需要把 "localhost" 替换为机器的 DNS 名。
现在您应该终止 Apache HTTP Server,下面是该命令:
D:\ApacheHTTPD\Apache>start Apache.exe -k stop
安装 PHP
您会发现这里的安装说明与您下载的 PHP 档案中包含的 install.txt 文件内的说明非常类似。请随意使用它作为指南,这里的说明只是该文档中包含的信息的一个子集。既然 Apache 已经安装成功,您现在可以安装 PHP 了。
安装步骤
把 PHP 程序包解压缩到您的根目录,这将会创建一个类似于 "D:\php-4.3.2" 的目录。
把 php.ini-dist 复制到 %SYSTEMROOT%\php.ini
编辑 %SYSTEMROOT%\php.ini 并执行下列操作:
把下面这一行解除注释(删除该行开头的分号): extension=php_oci8.dll
把 doc_root 设置为 Apache 的 htdocs 目录(例如:D:\ApacheHTTPD\Apache\htdocs)
将下列文件复制到包含 apache.exe 应用程序的目录:
D:\php-4.3.2\php4ts.dll
D:\php-4.3.2\extensions\php_oci8.dll
编辑文件 httpd.conf 并添加下列行:
注意:
把 D:/php-4.3.2 替换为您的 PHP 安装位置
用斜线 '/' 替代反斜线 '\'
#
# This will load the PHP module into Apache.Put this line with other LoadModule lines.
#
LoadModule php4_module d:/php-4.3.2/sapi/php4apache.dll
#
# Add this with the other AddModule lines.
#
AddModule mod_php4.c
#
# This next section will add a handler for .php files, put it with other IfModule lines.
#AddType application/x-httpd-php .php
启动 Oracle Database
启动 Oracle Database 和 Oracle Listener 涉及到使用位于控制面板下的管理工具文件夹中的 Services Applet。有两个服务必须启动。现在请启动它们。
OracleServiceORCL
OracleOraHome92TNSListener
注意:服务名可能会不同,但它们会极为相似,很容易判断是哪个服务。查找 "OracleSerivce{ORACLE_SID}",以及 "Oracle{ORACLE_HOME}TNSListener"
启动 Apache HTTP Server
现在您必须重新启动 Apache Server 以便测试 PHP 安装。完全象以前一样启动 Apache,并查看有没有任何错误消息。如果您在启动 Apache 时接收到错误消息,可以删除 Apache.exe 命令前面的 "start"。您需要打开第二个 command shell 调用关闭命令。
D:\ApacheHTTPD\Apache>Apache.exe
Apache/1.3.28 (Win32) PHP/4.3.2 running...
如果您收到任何错误,请仔细检查 httpd.conf 并纠正错误。
使用 Oracle 测试 Apache 和 PHP
使用 Oracle 测试 PHP 很简单。您只需要把一个 PHP 文件放入 htdocs 目录;通常是 /usr/local/apache/htdocs。
此处有两个文件,第一个用于测试基本 PHP 安装。如果安装了 PHP,您应该看见一个大的页面,上面全部都是 PHP 配置信息。第二个文件显示 SCOTT 模式中 EMP 表的 ENAME 和 SAL 列的一部分。这要求安装 SCOTT 模式,否则您将需要更改该页面。
phptest.php
<html>
<head>
<title>PHP Installation Test</title>
</head>
<body>
<?php phpinfo(); ?>
</body>
</html>
>
oci8test.php
注意:如果您的 Oracle Database 不是本地的,请如下所示编辑第二行 - 把 MyDatabaseTNSEntryName 替换为您服务器的 TNS 入口。
$db_conn = ocilogon( "scott", "tiger", "MyDatabaseTNSEntryName" );
echo "
$ " . number_format($results["SAL"][$i], 2). echo "
\n"; } echo " Number of Rows:
echo "
If you see data, then it works!
\n"; ?>
结论
您现在应该已经安装并配置了 Oracle Database、Apache HTTPD Server 和 PHP。现在,您既可以开始学习 PHP,也可以开始在 Oracle 平台上编写 PHP 应用程序。