1. Softwares.
- HTTP Server http://httpd.apache.org/
httpd-2.2.11.tar.gz
- PHP http://www.php.net/downloads.php
php-5.2.9.tar.gz (oci8 1.2.5)
- OCI8 (if need new OCI8 version) http://pecl.php.net/package/oci8/download/
oci8-1.3.5.tgz
- InstantClient http://www.oracle.com/technology/software/tech/oci/instantclient/index.html
basic-11.1.0.70-linux-x86_64.zip
sdk-11.1.0.7.0-linux-x86_64.zip
2. Install Softwares.
- InstantClient (on /oracle/instantclient_11_1 PATH)
$ mkdir /oracle
$ cd /oracle
$ unzip SOURCE/basic-11.1.0.70-linux-x86_64.zip
Archive: SOURCE/basic-11.1.0.70-linux-x86_64.zip
inflating:
instantclient_11_1/BASIC_README
.
.
.
$ unzip SOURCE/sdk-11.1.0.7.0-linux-x86_64.zip
Archive: SOURCE/sdk-11.1.0.7.0-linux-x86_64.zip
creating:
instantclient_11_1/sdk/
.
.
.
$ ls
instantclient_11_1
$ cd instantclient_11_1
###make link soft file ###
$ ln -s libclntsh.so.11.1 libclntsh.so
$ ln -s libocci.so.11.1 libocci.so
- Install HTTP Server (Increase DEFAULT_SERVER_LIMIT > 256)
$ cd SOURCE
$ tar zxvf httpd-2.2.11.tar.gz
httpd-2.2.11/
.
.
.
$ cd httpd-2.2.11
###Increase default server limit of prefork > 256###
$ vi server/mpm/prefork/prefork.c
#define DEFAULT_SERVER_LIMIT 256 => #define DEFAULT_SERVER_LIMIT 1024
$ ./configure --prefix=/usr/local/apache --with-config-file-path=/usr/local/apache/conf --enable-ssl
$ make
$ su
# make install
- Install PHP (new oci8)
$ cd SOURCE
$ tar zxvf oci8-1.3.5.tgz
.
.
.
$ tar zxvf php-5.2.9.tar.gz
php-5.2.9/
.
.
.
$ cd php-5.2.9
###change to use new oci8###
$ mv ext/oci8 ext/oci8-old
$ mv ../oci8-1.3.5 ext/oci8
$ ./configure --prefix=/usr/local/apache --with-config-file-path=/usr/local/apache/conf \
--with-oci8=share,instantclient,/oracle/instantclient_11_1 --enable-sigchild \
--with-apxs2=/usr/local/apache/bin/apxs --disable-cli --disable-cgi
$ make
$ su
# make install
3. Configure HTTP Server and Etc.
- Add some Environments in /usr/local/apache/bin/apachectl file.
#
ARGV="$@"
#
export ORACLE_HOME=/oracle/instantclient_11_1
export NLS_LANG=AMERICAN_AMERICA.TH8TISASCII
export TNS_ADMIN=/oracle/instantclient_11_1
- Modified /usr/local/apache/conf/httpd.conf file to use .php type.
AddType application/x-httpd-php .php
- Modified Etc... on /usr/local/apache/conf/httpd.conf file.
Example:
ServerName server.domain.com
ServerAdmin admin@domain.com
User oracle
Group dba
.
.
.
- Harden Some... on HTTP Sever.
Example: (uncomment "Include conf/extra/httpd-default.conf" in /usr/local/apache/conf/httpd.conf file before)
ServerTokens Prod
ServerSignature Off
.
.
.
4. Create TNSNAME File (check "TNS_ADMIN" on HTTP Server before).
Example: /oracle/instantclient_11_1/tnsnames.ora (Because -> TNS_ADMIN=/oracle/instantclient_11_1)
DB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =
db_host)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = DB)
)
)
5. Start HTTP Server(root).
# /usr/local/apache/bin/apachectl start
### write PHP connect Oracle DB and Test at /usr/local/apache/htdocs PATH (default)###
refer: http://docs.google.com/Doc?id=dhg2wncg_12ddc9f3tn
No comments:
Post a Comment