|
在 Linux 上安装 Oracle、PHP 和 Apache
作者:Robert Clevenger
您准备好开始使用 PHP 和 Oracle 数据库对话吗?下面我们演示将 Oracle 数据库、Apache HTTPD 服务器,以及 PHP 作为一个 Apache 模块安装到 Linux 上所需的步骤。在这个例子中,我们将使用 Windows 2000
软件需求
安装 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" );
Oracle PHP Test";
echo "Oracle PHP Test ";
echo "\n\\n";
echo "| Name | \nSalary | \n \n";
for ($i = 0; $i < $nrows; $i++ )
{
echo "\n";
echo "| " .$results["ENAME"][$i] . |
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 应用程序。
Robert Clevenger 是 Oracle 应用程序开发工具首席产品经理。Robert 于 1997 年 加入 Oracle,支持 Windows 平台的开发人员。1999 年,Robert 加入了 JDeveloper 的开发小组并帮助创建所有产品的 java Oracle9i 版本。在发布了 Oracle9i 的首个版本之后,他转至产品管理部门工作,重点负责开放源代码工程以及与 Oracle 合作伙伴更加密切地合作。
|