Configuração PHP.INI no linux

Enviada por Emilio Caveari 
Emilio Caveari
Configuração PHP.INI no linux
28 de December de 2011 às 11:23AM
Bom dia,

Estou com um problema de configuração do php, creio eu que seja.

Meu sistema gera os dados e salva na tabela temporaria, esses dados são exibidos em uma tela para edição e após eu salvo esses dados na tabela definitiva.

Eu uso windows 7 na minha maquina com Zend e PDO.

Na minha maquina(localhost) a persistencia configurada no PDO está perfeita, nao perco minhas tabelas temporarias entre as conexoes que faço no banco, mas após eu subir a aplicação para um servidor linux eu nao consigo manter o mesmo numero da conexão com o banco, entao eu sempre perco as tabelas temporarias no meio do caminho, sendo que eu me conecto sempre no mesmo banco que está em um outro servidor.

Dei uma olhada no php.ini(que é exibido pelo phpinfo) do servidor e ele nao tem as extenções de PDO nem de MySql mas a configuração de persistencia está ok (odbc.allow_persistent = On e odbc.max_persistent = -1), achei estranho e modifiquei o nome do arquivo, o php funcionou normalmente e phpinfo nao exibiu o arquivo, sinal que renomeei o arquivo certo.

Existe algum outro local que essas configurações são feitas no linux?
Marcos Regis
Re: Configuração PHP.INI no linux
28 de December de 2011 às 02:10PM
Pode não ser um problema só de configuração do PHP e sim do ambiente. Tente alterar o odbc.max_persistent para um valor fixo como 15 por exemplo.

Uma coisa que não entendi é porque está usando PDO com ODBC.

Qual banco está usando?
Emilio Caveari
Re: Configuração PHP.INI no linux
28 de December de 2011 às 02:37PM
Desculpa Marcos Regis, é mysql.allow_persistent = On

tentei sua dica mas ainda nao tenho a persistencia.

dei uma olhada na configuração do apache no servidor linux
vi em alguns sites sobre as linhas

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

que ativa a funcionalidade de persistencia com o banco de dados, mas ainda assim nao funfo..
Marcos Regis
Re: Configuração PHP.INI no linux
28 de December de 2011 às 03:32PM
Essas configurações não alteram o comportamento do PDO.

Para que o PDO use persistência você deve usar assim

<?php
try {
$dbh = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2',
array(PDO::ATTR_PERSISTENT => true));
.......
} catch (Exception $e) {
$dbh->rollBack();
echo "Failed: " . $e->getMessage();
}
?>
Emilio Caveari
Re: Configuração PHP.INI no linux
28 de December de 2011 às 04:11PM
Então Marcos,

eu estou usando essa configuração, quando eu acesso pelo localhost a conexão persiste, mas eu subi a aplicação e no servidor nao persiste,

sendo que, tanto por localhost ou pelo endereço do servidor, sempre acesso o mesmo banco de dados que se encontra em outro servidor.

estou achando que é alguma configuração do apache ou do php no servidor da aplicação, mas sou muito cru nessa parte, ainda estou a pesquisar
Marcos Regis
Re: Configuração PHP.INI no linux
28 de December de 2011 às 04:25PM
Bom, eu não tenho mais idéias do que possa ser.
Eu tentaria configurar meu ambiente local igualzinho ao remoto e verificar o funcionamento.
Emilio Caveari
Re: Configuração PHP.INI no linux
28 de December de 2011 às 04:49PM
Vou fazer isso

Obrigado pela atenção e ajuda
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.