2

mod_chroot を実行している Apache 2。基本的な html および php スクリプトに問題なくアクセスできます。

このテスト スクリプトは cli php を使用して正常に動作するため、接続文字列に問題がないことはわかっています。

$host = '127.0.0.1:pubdata';
$password ="*******";
$username="SYSDBA";
$dbh = ibase_connect($host, $username, $password);
.. do query etc

ただし、これを Chrooted Apache で実行すると、エラー メッセージが返されます。

Warning: ibase_connect(): Can't access lock files' directory /tmp/firebird in /html/app/webroot/test2.php

これは本当に奇妙に思えます。/tmp/firebird が存在し、CLI でスクリプトを実行するときに firebird によって使用されます。

--with-interbase=/opt/firebird/ を使用した PHP をコンパイルしたとき

これが理にかなっており、誰かが考えていることを願っています!

4

1 に答える 1

1

接続する前に Always localhost: in front または別の外部 IP を使用し、接続する前に apache + firebird を再起動してみてください

私の推測では、Classic または SuperClassic の firebird を使用していて、/tmp と db に直接接続しようとしていると思います。

http://firebird.1100200.n4.nabble.com/Fwd-Have-you-tried-firebird-2-5-SuperClassic-from-the-packages-td3053790.html

ps: また、chroot されると、Apache は ChrootDir の上にあるものにはアクセスできなくなります。

于 2011-04-05T19:27:06.793 に答える