Sou novo no ambiente LAMP e tenho algum problema com meu navegador visualizando consultas ODBC. Meu código PHP funciona no console em root, mas se eu executar o arquivo usando www-data como o usuário, ele falhará da mesma forma que o navegador.
Aqui está o código php:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$conn = odbc_connect("NetSuite", "username", "pw");
if (!$conn) {
die(' Could not connect: ' . odbc_error($conn));
}
$query = odbc_prepare($conn, "SELECT CUSTOMER_SERIAL_NUMBER FROM CUSTOMER_SERIAL_NUMBER");
$success = odbc_execute($query, array('Data'));
if($success)
odbc_result_all($query);
?>
aqui está o erro que estou recebendo no navegador e no console (quando executando como usuário de www-data):
PHP Warning: odbc_connect(): SQL error: [unixODBC][Driver Manager]Can't open lib '/opt/netsuite/odbcclient/lib64/ivoa25.so' : file not found, SQL state 01000 in SQLConnect in /var/www/html/GetNSData_1.php on line 5
Warning: odbc_connect(): SQL error: [unixODBC][Driver Manager]Can't open lib '/opt/netsuite/odbcclient/lib64/ivoa25.so' : file not found, SQL state 01000 in SQLConnect in /var/www/html/GetNSData_1.php on line 5
PHP Warning: odbc_error() expects parameter 1 to be resource, boolean given in /var/www/html/GetNSData_1.php on line 8
Warning: odbc_error() expects parameter 1 to be resource, boolean given in /var/www/html/GetNSData_1.php on line 8
minha pasta de driver está definida como / opt / netsuite / odbcclient / lib64 aqui está minha análise de permissão:
drwxr-xr-x 3 www-data root 4096 Jul 28 16:17 opt
drwxr-xr-x 3 www-data root 4096 Jul 28 16:17 netsuite
drwxr-xr-x 8 www-data root 4096 Aug 17 17:41 odbcclient
drwxr-xr-x 2 www-data www-data 4096 Aug 16 18:39 lib64
Todos os arquivos na lib64 estão definidos para
-rwxr-xr-x 1 www-data www-data
O arquivo php está atualmente definido para 777.
Eu simplesmente não consigo descobrir que permissão está faltando ou errado para conseguir que o www-data seja capaz de alcançar o driver. Qualquer ajuda seria muito apreciada.