Oracle + Apache + PHP + OpenLDAP PDF Imprimer Envoyer
Écrit par Benjamin Jakubowski   
Mercredi, 16 Août 2000 05:41

Installation et Configuration du Client Oracle, pour Apache et PHP

Le trio actuel du WEB est MySQL, Apache, PHP, mais il existe d'autre SGBD qui offre d'autres avantages par rapport à MySQL, et Oracle en fait partie. C'est pourquoi après plusieurs essais d'installation de Oracle + PHP + Apache je me suis enfin décidé à documenter son installation.

Le but de cette documentation n'est pas de vous expliquer le fonctionnement d'Oracle ( bien que cela sera disponible dans un futur chapitre ), mais l'installation du client Oracle et l'intégration des librairies Oracle dans PHP
Versions Utilisées
Oracle http://www.oracle.com 8i - 8.1.7
Apache http://httpd.apache.org 1.3.26
PHP http://www.php.net 4.2.1
OpenLdap http://www.openldap.org 2.0.21



Prérequis :
Assurer d'avoir suffisament des droits ( droit utilisateur Root )pour effectuer l'installation sur votre machine, ou alors contacter votre administrateur système.



  • Ensuite création des variables d'environnement afin de faciliter l'installation
La définition de ses variables a été faite en tcsh, mais vous pouvez adapter au shell que vous utilisez
setenv PHPBIN "/usr/local/bin/php"
setenv APACHEBIN "/usr/local/bin/HttP"
setenv ORACLE_HOME "/usr/local/bin/Oracle"
setenv OPENLDAPBIN "/usr/local/bin/ldap"

 

  • Installation du Client Oracle

Afin de procéder à l'installation du client oracle il nous faut créer 2 groupes et un utilisateur côté système :

 

groupadd dba
groupadd oinstall
useradd -g dba oracle
passwd oracle

 

Ensuite nous pouvons donc décompresser l'archive contenant les fichiers d'installation de Oracle, que vous avez préalablement téléchargé sur le site d'Orcale.

 

tar zxvf linux81701.tar

 

Démarrage de l'installation
Vous devez être authentifier au niveau du système en tant qu'utilisateur oracle

 

cd Disk1/
./runInstaller

 

Une interface graphique d'installation est disponible depuis la version 8i d'oracle. ( Malheuresement vous êtes contraint de passer par cette interface, tout du moins pour la première installation, et par la suite avec un fichier de configuration d'installaiton cela peut se faire automatiquement.)
Voici ce que vous obtenez :

 



 

Vous validez en cliquant sur l'onglet NEXT/Suivant et l'écran vous propose deux options :

 



 


Cet écran vous permets de définir le répertoire d'installation d'Oracle (que nous définirons par la suite dans une variable système $ORACLE_HOME).
En cliquant sur l'onglet Browse/Parcourir, vous pouvez choisir ce répertoire de destination, pour cette documentation nous prendrons comme répertoire de destination : $ORACLE_HOME/( Remplacer $ORACLE_HOME par sa valeur )

Vous validez en cliquant sur l'onglet NEXT/Suivant

 



 

Le processus d'installation determine les packages disponibles, et vous propose ensuite l'écran suivant

 



 

Cet écran vous demande de définir le group Unix qui permettra de mettre à jour votre Base de Donnée Oracle.
Vous validez en donnant le group dba que nous avons créé précédement

 

L'installation vous informe avec l'écran suivant que vous avez besoin d'executer un script avec les droits utilisateur root

 



 

Il faut simplement ouvrir une fenêtre ( xterm ... ) avec les droits root et exécuter le script suivant :
$ORACLE_HOME/orainstRoot.sh
ou $ORACLE_HOME et le répertoire d'installation que vous avez selectionné précédemment.
Une fois le script exécuter vous devez obtenir en retour le message suivant :

 


Creating Oracle inventory pointer file (/etc/oraInst.loc)
Changing groupname of $ORACLE_HOME/../oraInventory

 



Dès que le script a été exécuté cliquer sur le bonton Retry de cet écran.
L'écran suivant nous propose de sélectionner le type d'installation.

 



 

Valider en activant : Oracle8i Client 8.1.7.0.0 et Cliquer sur le Bouton Next

 



 

Valider en activant : Custom et Cliquer sur le Bouton Next

 



 

Sélectionner en plus les packages suivants :

 

Oracle Utilities
- Oracle Database Utilities 8.1.7.0.0 Oracle Java Products 8.1.7.0.0
- Oracle SQLJ 8.1.7.0.0
Oracle Programmer 8.1.7.0.0
- Pro C/C++ 8.1.7.0.0
- Oracle for Unix Documentation 8.1.7.0.0

 

Si vous le souhaitez en Cliquant sur l'onglet Product Languages...
Vous avez la possibilité d'ajouter la langue francaise.
Une fois que vous avez sélectionner les p&ckages cliquer sur le bouton Next

 



 

Valider en Cliquant sur le bouton Next

 



 

Valider en Cliquant sur le bouton Next

 



 

Cet Ecran offre un récapitulatif des packages qui vont être installés
Valider en Cliquant sur le bouton Install

 



Durant l'installation vous avez la possibilité de voir ce qui est entrain d'être executé via le fichier :

 


$ORACLE_HOME/../oraInventory/logs/installActions.log

 



A nouveau vous devez executer le script suivant avec les droits utilisateurroot

 

$ORACLE_HOME/root.sh

 



 

Valider par <entrée> à la question poser dès l'execution de ce script.
Il est possible que vous obteniez de ce script des erreurs :
No such file or Directory
Ceci ne dérangera en rien l'utilisation que nous voulons de faire d'Oracle dans le cas présent.

 



 

Valider en cliquant sur OK.

 



 

Cet écran ouvrira une nouvelle fenêtre de configuration.

 



 

Cliquer sur Cancel

 



 

Valider par Yes

 



 

Valider par OK

 



 

Valider par Next

 



 

Valider par Exit


 

Valider par Yes
La partie Oracle est maintenant terminée

 

  • Nous allons décompresser les archives ( PHP , Apache, OpenLdap )

 

tar zxvf <fichier_source>
ou
gunzip <fichier_source> | tar -xvf -

 

  • Installation de OpenLDAP
cd openldap-2.0.21/
./configure --prefix=$OPENLDAPBIN --exec-prefix=$OPENLDAPBIN
make depend
make
make test
make install

 

  • Pré-Installation de Apache
cd ../apache_1.3.26
./configure --prefix=$APACHEBIN
  • Installation PHP
cd ../php-4.2.1
./configure \
--prefix=$PHPBIN \
--with-apache=../apache_1.3.26 \
--enable-inline-optimization \
--enable-debug=no \
--enable-safe-mode \
--enable-calendar \
--enable-ftp \
--enable-sysvsem \
--enable-sysvshm \
--enable-trans-sid \
--disable-static \
--with-gettext \
--with-regex=system \
--with-ldap=$OPENLDAPBIN \
--with-oracle=$ORACLE_HOME \
--with-oci8=$ORACLE_HOME \
make
make install
cp php.ini-dist $PHPBIN/lib/php.ini
  • Installation Apache
cd ../apache_1.3.26/
./configure --prefix=$APACHEBIN \
--activate-module=src/modules/php4/libphp4.a
make
make install
  • Paramétrage de Apache
Editer le fichier $APACHEBIN/conf/httpd.conf
Modifier le fichier comme suit :
#
# ServerName allows you to set a host name which is sent back to clients for
# your server if it's different than the one the program would get (i.e., use
# "www" instead of the host's real name).
#
# Note: You cannot just invent host names and hope they work. The name you
# define here must be a valid DNS name for your host. If you don't understand
# this, ask your network administrator.
# If your host doesn't have a registered DNS name, enter its IP address here.
# You will have to access it by its address (e.g., http://123.45.67.89/)
# anyway, and this will make redirections work in a sensible way.
#
# 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your
# machine always knows itself by this address. If you use Apache strictly for
# local testing and development, you may use 127.0.0.1 as the server name.
#

ServerName localhost

#
# AddType allows you to tweak mime.types without actually editing it, or to
# make certain files to be certain types.
#
# For example, the PHP 3.x module (not part of the Apache distribution - see
# http://www.php.net) will typically use:
#

AddType application/x-httpd-php .php .php3
AddType application/x-httpd-php-source .phps

#
# DirectoryIndex: Name of the file or files to use as a pre-written HTML
# directory index. Separate multiple entries with spaces.
#

DirectoryIndex index.php index.php3 index.html


  • Vérification du fichier de configuration
$APACHEBIN/bin/apachectl configtest
Vous devez obtenir : Syntax OK, si tel n'est pas le cas veuillez vérifier votre fichier de configuration
  • Démarrage Automatique de Apache
$APACHEBIN/bin/apachectl start

cp $APACHEBIN/bin/apachectl /etc/init.d/httpd
ln -sf /etc/init.d/httpd /etc/rc0.d/K91httpd
ln -sf /etc/init.d/httpd /etc/rc6.d/K91httpd
ln -sf /etc/init.d/httpd /etc/rc1.d/K91httpd
ln -sf /etc/init.d/httpd /etc/rc5.d/S91httpd
ln -sf /etc/init.d/httpd /etc/rc4.d/S91httpd
ln -sf /etc/init.d/httpd /etc/rc3.d/S91httpd
ln -sf /etc/init.d/httpd /etc/rc2.d/S91httpd
  • Test de Connexion
  • Création d'une fichier index.php
<?
Putenv("ORACLE_HOME=$ORACLE_HOME");
// remplacer $ORACLE_HOME par sa valeur

$connection = OCILogon ("username","password","db");
if ($connection == false)
{
echo OCIError($connection)."<BR>";
exit;
}

?>
Vérifier ce script : http://localhost/index.php
Si aucun message d'erreur n'apparait c'est que vous avez réussi !!!!
Voila c'est fini, vous avez la possibilité d'effectuer des paramétrages spécifiques en modifiant les variables de ce fichier de configuration alors à vous de jouer.
Mise à jour le Lundi, 03 Septembre 2012 15:44
 

Ajouter un Commentaire


Code de sécurité
Rafraîchir