.::: 一路问情 :::.
  • 注册
  • 登录
  • 会员
  • 生存游戏
  • FTP资源中心
  • 七海争霸
  • 社区设施
  • 帮助
.::: 一路问情 :::. » 『建站技术』 » Apache 服务器上启用PHP支持
‹‹ 上一主题 | 下一主题 ››
发新话题
  • 发新话题
  • 发布投票
  • 发布商品
  • 发布悬赏
  • 发布活动
  • 发布辩论
  • 发布视频
打印

[技术] Apache 服务器上启用PHP支持

ie92
看贴不回的后果

初级会员

帖子
85 
威望
35 点 
金钱
89 元 
好评
0 点 
  • 个人空间
  • 发短消息
  • 加为好友
  • 当前离线
1楼 大 中 小 发表于 2008-2-21 21:01  只看该作者

Apache 服务器上启用PHP支持

在Apache 服务器上启用PHP支持
在安装一个 Oracle 服务器时,会自动地安装Apache 1.3 HTTP 服务器,Oracle 数据库的很多产品和特性都依赖于该服务器。对于数据库驱动的 Web 站点开发来说,在一台机器上安装第二个 Web 服务器看上去好象有点浪费资源。 简单地添加一些模块到Oracle Apache 上来支持其它产品将会更加高效。

这个专栏讲述在Oracle 9i 缺省 Apache Web 服务器上安装 PHP 支持。在这里我们将使用 Windows 路径和名称,但是UNIX 和其它操作系统也与之类似。(注意 Oracle 已经宣称它的Oracle 10g 中将提供 PHP 支持。)
第一步是为期望的 Web 站点从php.net 获取 PHP模块。下载这个模块,解压到一个目录下,然后(如果需要则)根据安装脚本构建二进制文件。从这里开始,我将使用c:\php 作为包含可执行文件的PHP 目录的安装根目录,使用c:\oracle\ora92 作为 Oracle Home。
第二步,将文件php4ts.dll(脚本引擎)复制到sapi 子目录。php4apache.dll 需要这个文件,而且如果它们在同一目录,就比较容易定位。

第三步,创建一个 php.config 文件,在该文件中包含 Oracle 的 Apache 服务器的与 PHP 相关的设置:
# Apache configuration to enable PHP
LoadModule php4_module c:/php/sapi/php4apache.dll
AddModule mod_php4.c
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
然后将这个文件保存到$ORACLE_HOME/Apache/Apache/conf 目录。在httpd.conf 文件中使用下面这行代码(放在oracle.conf 包含的后面)引用它:
include "C:/oracle/ora92/Apache/Apache/conf/php.conf"
最后,将文件php.ini-recommendation 复制到C:/oracle/ora92/Apache/Apache目录下,改名为php.ini。需要启用 Oracle 扩展才能够访问数据库。首先,确保extension_dir是一个完整的路径,而不是缺省的“/”目录:
extension_dir = "c:/php/extensions/"
然后,去除引用 Oracle 的一行代码的注释:
extension=php_oracle.dll
常规地重新启到 Web 服务器,检查是否有错误。然后编写一个非常简单地 PHP 脚本(以test.php 为文件名保存在$ORACLE_HOME/Apache/Apache/htdocs 中):

[Copy to clipboard] [ - ]
CODE:
<html>
<head><title>PHP Test</title></head>
<body>
<?php echo "Hello World"; ?>
</body>
</html>
应该还可以运行一个完整地 PHP 脚本,该脚本通过 PHP 扩展调用访问一个 Oracle 数据库(将其以oratest.php为文件名保存在$ORACLE_HOME/Apache/Apache/htdocs 中):
<html>
<head><title>PHP Test with Oracle</title></head>
<body>
<pre>
<?php
    $conn = ora_logon("scott","tiger");
    ora_commitoff($conn);
    $cursor = ora_open($conn);
    ora_parse($cursor,"select initcap(ename) from emp order by 1");
    ora_exec($cursor);
    while (ora_fetch($cursor))
    {
        $ename = trim(ora_getcolumn($cursor,"ENAME"));
        echo $ename."\n";
    }
?>
</pre>
</body>
</html>



QQ
UID
71372 
精华
0 
积分
35 
钻石
0 克拉 
宣传
0 点 
来路
搜索引擎 
阅读权限
10 
性别
男 
来自
IE92.COM 
在线时间
7 小时 
注册时间
2008-2-20 
最后登录
2008-6-2 

查看详细资料

TOP

xuqiang

中级会员

Rank: 2

帖子
104 
威望
75 点 
金钱
264 元 
好评
0 点 
  • 个人空间
  • 发短消息
  • 加为好友
  • 当前在线
2楼 大 中 小 发表于 2008-7-17 20:12  只看该作者
沙发,板凳都没偶的份了



UID
48 
精华
0 
积分
75 
钻石
0 克拉 
宣传
0 点 
来路
 
阅读权限
20 
在线时间
15 小时 
注册时间
2006-8-18 
最后登录
2008-7-24 

查看详细资料

TOP

‹‹ 上一主题 | 下一主题 ››
发新话题
 

 

当前时区 GMT+8, 现在时间是 2008-7-24 15:08 蜀ICP备08000616号

清除 Cookies - 联系我们 - Ask Love - Archiver - WAP - TOP - 界面风格

  • YUYU_Emera-x

Powered by Discuz! 6.0.0,

Processed in 0.017955 second(s), 5 queries, Gzip enabled.

  • 控制面板首页
  • 编辑个人资料
  • 积分交易
  • 积分记录
  • 公众用户组
  • 个人空间管理
  • 资源中心
  • 名人堂
  • 社区银行
  • 醒目高亮
  • 勋章中心
  • 空间互踩
  • 便民查询
  • 邮箱图标
如果你喜欢一路问情,请同时向你的5个QQ好友宣传Sy64.Com,多谢支持!
论坛是我家,维护靠大家!--问情宣