コマンドラインからスクリプトを問題なく実行できます: php test.php と接続し、単純なクエリを返し、Oracle から切断します。私が実行すると:
isql -v dsn uname pw
接続し、クエリも実行できます。問題は、ブラウザからスクリプトを実行すると、素晴らしい 500 エラーと segfault がログ ファイルに記録されることです。現在、apache はデバッグ用にコンパイルされていません (これは面倒です)。デバッグでApacheを再インストールする必要がないようにしたいと思います。
私が使用しています: PHP:
PHP 5.3.6 (cli) (built: Mar 17 2011 20:56:13)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator
アパッチ:
Server version: Apache/2.2.17 (Unix)
Server built: Oct 27 2010 10:04:21
Server's Module Magic Number: 20051115:25
Server loaded: APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.3.9, APR-Util 1.3.9
Architecture: 64-bit
Oracle クライアント:
client64, both sdk and instant client
Linux カーネル:
2.6.35.13-91.fc14.x86_64
unixODBC: unixODBC.x86_64 2.2.14-12.fc14 (yum から)
ブラウザで URL にアクセスすると apache/php が終了するため、php で高度なデバッグやログを実行することさえできません。
現在、実行できるかどうかを確認しようとしています:
<?php exec('php test.php'); ?>
当分の間、これを回避できるかどうかを確認します。必要に応じて、他にも喜んで共有します。