Mise en place PHP / Apache / Oracle client

  Applications nécessaires et versions utilisées j'y go !
Installation du client Oracle 8i j'y go ! Installation j'y go !
Configuration j'y go !
Les fichiers TNSNAMES
j'y go !
Les serveurs ORACLENAMES
j'y go !
Les serveurs de noms d’hôtes DNS
j'y go !
Autres méthodes
j'y go !
Installation d’Apachej'y go !
Installation j'y go !
Configuration j'y go !
Test j'y go !
Installation du support PHP pour Apache
j'y go !
Installation de PHP j'y go !
Configuration de PHP j'y go !
Configuration d’Apache pour l’utilisation de PHP j'y go !
Test du fonctionnement d’Apache+PHP j'y go !
oci8
j'y go !

Applications nécessaires et versions utilisées

    Les versions d’Apache et PHP utilisées sont les plus récentes à ce jour, reconnus comme stable au 22 avril 2002.Le client Oracle utilisé est en version 8i.

    Application

    Apache

    PHP

    Client Oracle 8i

    Version utilisée

    2.0.35

    4.1.2

    8.1.7.0.0 (R3)

    Fichiers utilisées

    apache_2.0.35-win32-x86-no_ssl.msi

    php-41.1.2-Win32.zip

    CD-ROM d’installation

    Adresse de téléchargement

    www.apache.org

     

    www.oracle.com


    A noter : La procédure qui suit a aussi été testée avec succès avec des versions différentes d’Apache et de PHP, respectivement version 1.3.20 et 4.0.6 ; Ces versions sont intégrées à un package complet de développement de site Web nommé EasyPHP version 1.5, qui comprend aussi le serveur de Base de Données MySQL version 3.23.40, pour plus d’informations Voir document ‘Le kit EasyPHP’.
    De plus comme toutes les installations sur des systèmes Windows NT / 2000 ou XP il est nécessaire d’être logué sur le poste avec des droits d’administrateur pour effectuer ces installations.

Installation du client Oracle 8i

Installation

nsérer le CD-ROM, suivre la procédure d’installation.Lorsqu’il vous est demandé le choix " Types d’installations ", choisir " Utilisateur de l’application (157Mo)", poursuivre l’installation.

Configuration

Il nous faut traiter un point important de la configuration du Client ORACLE : la résolution de noms ORACLE.Dans le but de réussir à se connecter à une base, il existe trois principales méthodes de résolution de noms ORACLE, celles-ci permettent au Client ORACLE d’identifier un serveur de Base de Données ORACLE ainsi que les Bases de Données présentent sur celui-ci (puisque plusieurs Base de Données peuvent se trouver sur un seul serveur).

Les fichiers TNSNAMES

Premièrement la résolution ‘statique’ ou ‘locale’, méthode la plus ancienne, repose sur des fichiers de configuration appelés TNSNAMES : ces fichiers sont de simples descriptifs qui font apparaître la correspondance entre un Alias (nom représentatif de la Base ou du schéma souhaité que l’utilisateur retiendra et emploiera pour ce connecter ) et diverses informations utiles au Client ORACLE pour établir la communication avec le serveur de Base de Données ORACLE.Ces fichiers sont de simples fichiers textes généralement situés dans le dossier /network/admin/ de votre répertoire d’installation du Client ORACLE, accompagné souvent d’exemples, ils sont aisément reproductibles. Il existe aussi un utilitaire appelé Net8 Assistant qui permet de générer encore plus facilement ces fichiers :

Voici un exemple de fichier TNSNAMES, premièrement le modèle puis un exemple de descriptif :

# TNSNAMES.ORA Network Configuration File: C:\PrgFile\orant\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
ALIAS
= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = SERVEUR_DOMAIN)
(PORT = NUMERO_PORT)) ) (CONNECT_DATA = (SID = ID_BASE) ) )
PRDUN = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = sp-prod-1)(PORT = 1521)) ) (CONNECT_DATA = (SID = PRDUN) ) )

Les serveurs ORACLENAMES

Récemment un système de serveur de noms ORACLE (ORACLENAMES) a été mis en place. Ces serveurs, interrogeables par les Clients ORACLE qui leur envoie un Alias, fournissent l’ensemble des données nécessaires pour établir la communication avec le serveur de Base de Données ORACLE.Ce système, d’un fonctionnement similaire au système de serveur de noms DNS, est dynamique et permet une mise à jour des informations plus simple. Puisqu’à la différence avec la résolution de nom locale, où pour mettre à jour les informations il est nécessaire de modifier les fichiers TNSNAMES de chaque poste Client, il suffit de modifier les informations présentes sur le serveur de nom.

Les serveurs de noms d’hôtes DNS

Parfois la résolution de noms d’hôtes DNS (HOSTNAME) suffit pour identifier la base d’un serveur de Base de Données ORACLE, les Clients donnent le nom d’un hôte d’un domaine correspondant à un serveur de Base de Données ORACLE et le serveur DNS leur retourne l’ensemble des données nécessaires pour établir la communication avec le serveur de Base de Données ORACLE.

Autres méthodes

Dernièrement une méthode basée sur le protocole LDAP a été développée mais reste peu utilisée.Il existe aussi la méthode appelée CDS (Cell Directory Service) nom de cellule (dossier sur un serveur).Une méthode utilise NOVELL NDS (NetWare Directory Services) contexte de nom.Une dernière emploie NIS (Network Information Services) métamappe.

Installation d’Apache

    Installation

Aucune intervention particulière :
      Elle s’effectue au sein du fichier httpd.conf situé par défaut dans C:\Program Files\Apache Group\Apache2\conf\Remarque : Les paramètres par défaut d’Apache fixés dans le fichier httpd.conf suffisent à tester le bon fonctionnement de celui-ci et sont assez bien documentés. Cette configuration sera ensuite adaptée par l’administrateur selon ses besoins comme par exemple pour fixer des restrictions d’accès ou changer l’emplacement des fichiers log.
La page d’accueil par défaut d’Apache doit apparaître.En cas d’échec :

Installation du support PHP pour Apache

      Editer php.ini et modifier le comme suit (en rouge, les lignes à modifier) :


      ;;;;;;;;;;;;;;;;;;;;;;;;;
      ; Paths and Directories ;
      ;;;;;;;;;;;;;;;;;;;;;;;;;
      ; UNIX: "/path1:/path2"
      ;include_path = ".:/php/includes" ;
      ; Windows: "\path1;\path2"
      include_path = ".;c:\Program Files\Apache Group\Apache2\php\includes"

      . . .
      ; Directory in which the loadable extensions (modules) reside.
      ; Dossier contenant les extensions (modules) pouvant être chargées
      ;extension_dir = ./
      extension_dir = c:\Program Files\Apache Group\Apache2\php\extensions

      . . .
      ;;;;;;;;;;;;;;;;;;;;;;
      ; Dynamic Extensions ;
      ;;;;;;;;;;;;;;;;;;;;;;
      . . .
      ; Il s’agit ici de décommenter les librairies dont on a besoins,
      ; se référer à la documentation officielle PHP pour plus d’informations ;extension=php_mssql.dll
      ; La librairie suivante est nécessaire afin d’utiliser le support 
      ; Oracle8i pour PHP
      extension=php_oci8.dll
      ;extension=php_oracle.dll

      Remarque : La librairie php_oci8.dll correspond à l’utilisation du client Oracle 8i (version 8.1.x).Pour les versions antérieures il est recommandé d’employer la librairie php_oracle.dll.Attention : L’utilisation des deux librairies Oracle simultanément est source de dysfonctionnements.

    Configuration d’Apache pour l’utilisation de PHP

      PHP configuré et installé et correctement, il faut maintenant en activer le support par Apache afin que ce dernier puisse exécuter les scripts PHP.Editer le fichier httpd.conf et modifier le comme suit :

      # DirectoryIndex: sets the file that Apache will serve if a directory
      # is requested. #
      # The index.html.var file (a type-map) is used to deliver content-
      # negotiated documents. The MultiViews Option can be used for the
      # same purpose, but it is much slower.
      # Attention l’ordre est important
      DirectoryIndex index.php index.html index.html.var
      . . .
      # ScriptAlias: This controls which directories contain server scripts.
      # ScriptAliases are essentially the same as Aliases, except that
      # documents in the realname directory are treated as applications and
      # run by the server when requested rather than as documents sent to the client.
      # The same rules about trailing "/" apply to ScriptAlias directives as to
      # Alias.
      # ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache2/cgi-bin/"
      ScriptAlias /php/ "c:/Program Files/Apache Group/Apache2/php/"
      . . .

      # AddType allows you to add to or override the MIME configuration
      # file mime.types for specific file types.
      AddType application/x-httpd-php .php
      Action application/x-httpd-php "/php/php.exe"
       

C:\Program Files\Apache Group\Apache2\htdocs\, le dossier par défaut de publication d’Apache.

Un tableau récapitulatif de la configuration d’Apache et de PHP doit apparaître.Noter bien la section oci8 qui indique le support Oracle 8i. 

oci8

OCI8 Support

enabled

Revision

$Revision: 1.149.2.2 $


En cas d’échec : Se reporter aux sections précédentes et vérifier les fichiers de configuration php.ini et httpd.conf.
(c) 2002- 2006 Didier Deléglise


modifié
le 20/11/2006

Ecrire a DD
ecris
moi


les forums techniques Oracle

mon BLOG Oracle,
en Francais
connaitre DD
l'autre vie
de DD

mon CV

trucs
et astuces

JOBs Oracle
du jour
Homepage "Tout sur Oracle"
Mon site :
Tout sur Oracle (et le web)
Copyright (C) 2002
Utilisation de ces documents