[php]
伺服器資訊:linux+apache2+oracle
以下步驟假設linux+apache2+oracle已經正確安裝,特別是oracle的幾個環境變數設定好.
[
請確認你已經為 Oracle 使用者和 web daemon 使用者正確設定了 Oracle 環境變數(就是把oracle使用者的那些oracle環境變數也弄到root使用者那裡)。下面列出了需要設定的環境變數:
ORACLE_HOME #ORACLE安裝路徑
ORACLE_SID # ORACLE資料庫ID
LD_LIBRARY_PATH #LD聯結庫路徑
NLS_LANG #ORALCE地區(語言)設定
ORA_NLS33 # ORA_NLS33路徑
在為 網頁伺服器使用者佈建環境變數之後,你還需要將 網頁伺服器使用者(nobody、 www)加到 oracle 組中。
]
[PHP開始:請盡量以root身份安裝]
#tar -xzpvf php-4.3.8.tar.gz [解壓PHP包]
#cd php-4.3.8
#./configure --prefix=/home/www/apache2/php --with-apxs2=/home/www/apache2/bin/apxs --with-oracle=/home/oracle/ora9/product/9.2 --with-oci8=/home/oracle/ora9/product/9.2 --enable-sockets --enable-track-vars --enable-sigchild
參數依實際情況調整: [prefix:將php安裝到apache2目錄下]
[with-apxs2:指定到apache2目錄下/bin/apxs]
[with-oracle:oracle_home路徑]
[with-oci8:oracle_home路徑]
[其它三個預設]
[這一步請確認路徑正確,沒有報錯,直到出現Thank you ..PHP字樣]
#make [長時間等待。。。。。。]
#make install [稍後。。。。。。。。。]
#vi **/apache2/conf/httpd.conf
[
查看檔案最後是否包含以下三行:如沒有請加上
LoadModule php4_module modules/libphp4.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
]
#cp php.ini-dist /usr/local/lib/php.ini [查看phpinfo()中的Configuration File (php.ini) Path是否正確]
#重起apache
[PHP完成]
[
關於PHP串連oracle:
由於ORACLE目錄需要能被APACHE進程使用者讀到,
當用PHP串連oracle報錯:Error while trying to retrieve text for error
則需要將oracle目錄設成755
#chmod 755 -R $ORACLE_HOME
遇到:"ORA-27121: unable to determine size of shared memory segment" 錯誤
ORA-01034: ORACLE not available
ORA-27121: unable to determine size of shared memory segment
Linux Error: 13: Permission denied
主要是因為oracle安裝程式沒有給oracle這個可執行程式設定正確的setuid。這樣設定一下:
$ cd $ORACLE_HOME/bin
$ chmod 6751 oracle
結果類似這樣就行了。
$ ls -l $ORACLE_HOME/bin/oracle
-rwsr-s--x 1 oracle oinstall 23352783 Aug 14 2001 /home/oracle/app/oracle/product/8.1.6/bin/oracle
]
[
關於oracle中存貯中文資料成亂碼的問題:
請確認以下三個地方字元集設定是一樣的
第一: 用戶端應用字元集(Client Application Character Set)
第二: 用戶端NLS_LANG參數設定
第三: 伺服器端,資料庫字元集(Character Set)設定
]
[/php]