国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

整合Oracle 10g、Apache 2.0、Php 5

2024-08-29 13:36:56
字體:
供稿:網(wǎng)友
基本介紹 2004年7月13日,php 官方站點正式發(fā)布了 PHP 5。Oracle 在 2004 年 8 月公布將在拳頭產(chǎn)品 application Server 中提供對 PHP 的支持。先是在Oracle Application Server 10g (9.0.4) 提供 mod_php 模塊,繼而在Oracle Application Server 10g Release 2 (10.1.2) 中提供了 PHP 4.3的版本,接著Oracle JDeveloper 10g 也將提供對 PHP 擴展能力。相信,不久Oracle將正式支持 PHP 5。而隨著 Oracle 技術(shù)社區(qū)的大力推廣,也將有更多的開發(fā)人員利用 PHP 進行大型數(shù)據(jù)庫引用的開發(fā)。在 OTN 上已經(jīng)有文檔描述如何進行 10g / HTTPD 1.3/ PHP 4 的整合。所以這篇文檔將描述如何整合 Oracle 10g、Apache (httpd 2)、PHP 5。便于快速的組建一個開發(fā)環(huán)境。假如您想對 PHP 的一些新功能(比如PDO)進行一下體驗,那么本文可以作為一個開端。Oracle、Apache、PHP三者之間的關(guān)系不妨借用一下這張示意圖(原圖地址):

整合Oracle 10g、Apache 2.0、Php 5 本文假定您的 Oracle 10g (服務(wù)器或者客戶端)已經(jīng)安裝完畢。假如沒有安裝,請參考這篇文檔:http://www.dbanotes.nethttp://oracle.chinaitlab.com/Install-Oracle10g-RHEL3.htm
確定自己的 Oracle 處于可用狀態(tài)。本文所擁的操作系統(tǒng)為 Fedora Core 3 linux,Oracle 版本為10 R1 (10.1.0.2)。下載所需文件:HTTPD 和 PHP 5HTTPD - httpd://httpd.apache.org (目前的版本是 2.0.52)PHP 5 - http://www.php.net (最新版本是 5.0.2)安裝HTTPD需要說明的是,現(xiàn)在 Apache 社區(qū)不推薦把 Apache 2.0 用在產(chǎn)品環(huán)境中.

[root@FC3 software]# tar -zxvf httpd-2.0.52.tar.gz
[root@FC3 software]# cd httpd-2.0.52
[root@FC3 httpd-2.0.52]# ./configure --PRefix=/usr/local/apache /
                         --enable-module=so
[root@FC3 httpd-2.0.52]# make clean
[root@FC3 httpd-2.0.52]# make
[root@FC3 httpd-2.0.52]# make install
[root@FC3 httpd-2.0.52]# /usr/local/apache/bin/apachectl start
[root@FC3 httpd-2.0.52]# /usr/local/apache/bin/apachectl stop安裝說明:第三行指定 Apache 的架構(gòu)獨立的文件安裝位置。同時指定將用模塊的形式。假如為了方便的話,可以創(chuàng)建兩個腳本控制 Apache 的啟動與關(guān)閉。[root@FC3 ~]# vi /bin/startapache添加如下內(nèi)容:

#!/bin/sh
ORACLE_HOME=/u01/app/oracle/prodUCt/10.1.0/db_1

ORACLE_SID=TEST
eXPort ORACLE_HOME ORACLE_SID
echo Starting Apache
/usr/local/apache/bin/apachectl start
創(chuàng)建關(guān)閉 apache 的腳本:

[root@FC3 ~]# vi /bin/stopapache
添加如下內(nèi)容:
#!/bin/sh
ORACLE_HOME=/u01/app/oracle/product/10.1.0/db_1

ORACLE_SID=TEST
export ORACLE_HOME ORACLE_SID
echo Starting Apache
/usr/local/apache/bin/apachectl stop
修改文件權(quán)限:
[root@FC3 ~] chmod +x /bin/startapache /bin/stopapache安裝 PHP 5

[root@FC3 software]# tar -xjf php-5.0.2.tar.bz2
[root@FC3 software]# cd php-5.0.2
[root@FC3 php-5.0.2]# export ORACLE_BASE=/u01/app/oracle
[root@FC3 php-5.0.2]# export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1
[root@FC3 php-5.0.2]# export ORACLE_SID=TEST
[root@FC3 php-5.0.2]# export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
[root@FC3 php-5.0.2]# export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
[root@FC3 php-5.0.2]# ./configure --with-apxs2=/usr/local/apache/bin/apxs /
                      --with-oci8=$ORACLE_HOME
[root@FC3 php-5.0.2]# make clean
[root@FC3 php-5.0.2]# make
[root@FC3 php-5.0.2]# make install
[root@FC3 php-5.0.2]# cp php.ini-dist /usr/local/lib/php.ini安裝說明:第三到七行其實有些羅嗦了,其目的是控制 root 用戶的環(huán)境變量,其實也可以直接在 root 用戶的.bash_profile文件中制定環(huán)境變量。當(dāng)然了,也可以用 oracle 用戶來進行 configure 與 make 。第八行中的 --with-oci8=$ORACLE_HOME 激活 oci8 支持。接下來需要修改httpd.conf 文件的內(nèi)容:[root@FC3 php-5.0.2]# vi /usr/local/apache/conf/httpd.conf添加如下內(nèi)容:LoadModule php5_module modules/libphp5.so
<IfModule mod_php5.c>
     AddType application/x-httpd-php .php
</IfModule>重新啟動 apache:
[root@FC3 ]# /bin/stopapache
[root@FC3 ]# /bin/startapache
測試 PHP 模塊
測試 PHP 模塊是否已經(jīng)可用。當(dāng)然是標(biāo)準(zhǔn)辦法,寫一個包含如下內(nèi)容的PHP頁面 info.php:<?php phpinfo(); ?>從瀏覽器中查看該頁面輸出內(nèi)容。
注重,該頁面中的內(nèi)容 Configure Command 那一行中的內(nèi)容是否包括如下內(nèi)容:

'--with-apxs2=/usr/local/apache/bin/apxs'
'--with-oci8=/u01/app/oracle/product/10.1.0/db_1'注重:在測試之后,出于安全的考慮,請把該文件刪除測試 PHP 的 oci寫一個簡單的頁面測試 oci 是否可用 (Just a copy sample from OTN):<?php$db_conn = ocilogon( "scott", "tiger","TEST" );$cmdstr = "select ename, sal from emp";$parsed = ociparse($db_conn, $cmdstr);
ociexecute($parsed);$nrows = ocifetchstatement($parsed, $results);echo "<Html><head><title>Oracle PHP Test</title></head><body>";
echo "<center><h2>Oracle PHP Test</h2><br>";
echo "<table border=1 cellspacing='0' width='50%'>/n/<tr>/n";
echo "<td><b>Name</b></td>/n<td><b>Salary</b></td>/n</tr>/n";for ($i = 0; $i < $nrows; $i++ )
{
    echo "<tr>/n";
    echo "<td>" . $results["ENAME"][$i] . "</td>";
    echo "<td>$ " . number_format($results["SAL"][$i],   2). "</td>";
    echo "</tr>/n";}echo "<tr><td colspan='2'> Number of Rows: $nrows</td></tr></table>";
echo "<br><em>If you see data, then it works!</em><br></center></body></html>/n";?>說明:上例中,scott/tiger分別為數(shù)據(jù)庫的用戶名字和密碼,TEST為數(shù)據(jù)庫連接串名字。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 余姚市| 油尖旺区| 陈巴尔虎旗| 东明县| 北川| 闵行区| 文成县| 永德县| 惠东县| 宾川县| 新绛县| 灌阳县| 平乡县| 哈尔滨市| 榕江县| 酒泉市| 酉阳| 赤壁市| 安阳县| 新泰市| 保德县| 苍梧县| 永昌县| 泰和县| 张家港市| 巴里| 垣曲县| 嘉善县| 连云港市| 许昌市| 阿坝县| 伊金霍洛旗| 托克托县| 广东省| 新泰市| 五家渠市| 夏邑县| 稻城县| 安宁市| 顺义区| 安吉县|