HowTo: Instalando PHP e Oracle XE Express Edition no openSuse 10.2


Mais um howto…

Neste passo-a-passo iremos configurar o PHP e o Oracle XE Express Edition em openSuse (suse) 10.2. O objetivo deste é ajudar a todos que já precisaram instalar estes dois e não conseguiram ajuda na documentação oficial da Oracle, porque eu também não achei nenhum manual lá para OpenSuse.

1º Passo – Instalando e Configurando o Oracle

Você deve faze o download do Oracle XE database Free . Baixe a versão em RPM, que a instalação ocorre normalmente executando:

# rpm -i nomedorpm.rpm

Lembrando que você deve estar como root.

A configuração:

# /etc/init.d/oracle-xe configure

Você pode aceitar todas as opções como default, exceto a senha é claro.

O pulo do gato esta em compilar o PHP com suporte a Oracle. Infelizmente não há nenhum módulo no YAST para fazer isso, então a melhor maneira é desistalar o PHP e todos seus módulos, bem como também o Apache e todos seus módulos, e então proceder com a instalação dos pacotes mais recentes…

2º Passo – Configurando o Apache

Primeiro faça o download do Apache: http://httpd.apache.org/

E então, como root, execute estes comandos:
# tar -jxvf httpd-2.XX.tar.bz2
# cd httpd-2.XX
# ./configure –prefix=/usr/local/apache –enable-module=so
# make
# make install

3º Passo – Configurando o Cliente Oracle

O próximo passo é fazer o download de um cliente Oracle, conhecido como instant client, você pode pegar um aqui.
Pegue a versão basic e descompacte em seu diretório home: /home/usuario/instantclient_10_2. O legal é você já ter no sistema um usuário chamado Oracle, ai pode-se usar o home dele.

4º Passo – Configurando o PHP
Agora faça o download do PHP, você consegue-se uma cópia aqui. Como root, execute os comandos:

# tar -jxvf php-5.XX.tar.bz2
# cd php-5.XX
# ./configure \
–with-oci8=shared,instantclient,/home/usuario/instantclient_10_2 \
–with-apxs2=/usr/local/apache/bin/apxs \
–with-config-file-path=/usr/local/apache/conf \
–enable-sigchild
# make
# make install

Há, obviamente lembre-se de trocar o /home/usuario pelo usuário que você descompactou o instantclient_10_2.

Após executar este comandos você terá que localizar o arquivo oic8.so que foi gerado, você pode encontra isso dentro dos módulos do PHP. Faça uma cópia do arquivo para /usr/local/apache/modules/.

Também teremos que fazer uma chamada para este módulo no PHP.ini, mas podemos fazer isso depois. Agora execute:

# cp php.ini-recommended /usr/local/apache/conf/php.ini

Edite o arquivo de configuração do Apache em: /usr/local/apache/conf/httpd.conf

e adicione estas linhas:

#
# This next section will call PHP for .php, .phtml, and .phps files
#
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps

#
# Este é o diretório onde contém o PHP.ini
#
PHPIniDir “/usr/local/apache/conf”
Se a linha LoadModule não estiver sido inserida automaticamente, adicione esta:

LoadModule php5_module modules/libphp5.so

Agora vamos editar o PHP.ini para carregarmos a extensão oci8.so:

# vi /usr/local/apache/conf/php.ini
Edite a variável edit extension_dir, e entre com estes valores:

extension_dir = “/usr/local/apache/modules”
E adicione a extension=oci8.so onde ele mostra a lista de extensões disponíveis

5º Passo – Startando o Apache
Temos que editar o arquivo de Start do Apache, para que ele carregue automaticamente as Libraries OCI do Oracle. Para fazer isso execute como root:

# vi /usr/local/apache/bin/start.sh

Insira o texto abaixo, adaptando conforme sua configuração, você pode até remover o tns_admin se você não quiser usar:

#!/bin/sh

APACHEHOME=/usr/local/apache/bin

LD_LIBRARY_PATH=/home/usuario/instantclient_10_2:${LD_LIBRARY_PATH}
TNS_ADMIN=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin
export LD_LIBRARY_PATH TNS_ADMIN

echo Starting Apache
$APACHEHOME/apachectl start

Agora para testar, faça um start e stop no apache:

# /usr/local/apache/bin/apachectl start
# /usr/local/apache/bin/apachectl stop

6º Passo – Teste Final
As configurações estão prontas, agora para testarmos precisamos ter um arquivo PHP, podemos criar dentro de htdocs do apache:

# vi /usr/local/apache/htdocs/phpinfo.php

E adicione estas linhas:

< ?php phpinfo(); ?>

Simplemente salve e execute em seu navegador: http://localhost/phpinfo.php e verifique se o módulo oci8 esta sendo carregado, se encontrar então esta perfeito… se não revise os passos anteriores…
Espero que este simples howto possa ajudar alguém…

Fonte: http://www.gareth.fiford.com/

2 thoughts to “HowTo: Instalando PHP e Oracle XE Express Edition no openSuse 10.2”

Leave a Reply

Your email address will not be published. Required fields are marked *