Como detectar o php -oracle usando o ubuntu nginx php7-fpm

1

Estou executando uma máquina Ubuntu-nginx-php7-fpm e o phpinfo () não detecta a extensão oracle.

Como posso dizer ao nginx ou php que a extensão oracle-php está instalada?

A máquina é um clone de outra onde o oracle php7-fpm funciona.

Ao executar o phpinfo () do php oracle não está listado e até o oci-connect faz o dot funcionar ou está listado no error.log

    
por Ângelo Rigo 18.12.2015 / 14:27

1 resposta

1

Eu não posso fornecer o que está faltando no seu caso. Aqui estão todos os passos para ativar o oci 8 para php-fpm.

Primeiro instale o oci8.so usando os passos abaixo:

Instale PECL, arquivos de desenvolvimento PHP, Build Essential, Unzip e a biblioteca AIO

apt-get install php-pear php7.0-dev build-essential unzip libaio1

Crie o diretório oracle

mkdir /opt/oracle

Faça o download do cliente instantâneo a partir deste link . Download 11.2 Básico & SDK. Apenas a versão 11.2 estava funcionando para mim.

Mover os arquivos baixados

mv instantclient-* /opt/oracle

Descompacte os arquivos usando o comando unzip (descompacte) Renomeie o diretório criado

mv instantclient_11_2 instantclient

Entre no diretório do cliente instantâneo e crie os seguintes soft links

ln -s libclntsh.so.11.2 libclntsh.so
ln -s libocci.so.11.2 libocci.so

cd to  /opt

defina as permissões no diretório

chown -R root:www-data /opt/oracle

Adicione o cliente instantâneo aos arquivos de configuração ld

echo /opt/oracle/instantclient > /etc/ld.so.conf.d/oracle-instantclient

Atualizar as vinculações de tempo de execução do vinculador dinâmico

ldconfig

Instale OCI8 usando PECL

pecl install oci8

Quando você estiver preparado para o local do cliente, digite o seguinte:

instantclient,/opt/oracle/instantclient

Por fim, configure o php.ini

Neste momento o seu oci8.so está pronto para ser usado. Apenas inclua no seu arquivo php.ini.

cd /etc/php/mods-available/
vi oci.ini

adicione essa linha ao arquivo "extension = oci8.so"

Agora crie um link simbólico como este:

cd /etc/php/7.0/fpm/config.d/
ln -s /etc/php/mods-available/oci.ini 20-oci.ini

Adicione variáveis do ambiente oracle:

vi /etc/environment

Adicione as seguintes linhas:

# Oracle Instant Client
export LD_LIBRARY_PATH="/opt/oracle/instantclient"
export TNS_ADMIN="/opt/oracle/instantclient"
export ORACLE_BASE="/opt/oracle/instantclient"
export ORACLE_HOME=$ORACLE_BASE

Finalmente, reinicie o serviço fpm:

sudo php7.0-fpm restart

Você deve poder verificar a extensão do oci8 através do phpinfo.

    
por 07.01.2016 / 14:41