一般ユーザーで php test.phpとサーバー上でコマンドすると
php: error while loading shared libraries: libpq.so.4: cannot open shared object file: Permission denied
とでてしまいます。
libpq.so.4を/usr/libにシンボリックリンクで貼ったのですが、このオーナーをrootから変更してもだめでした。
スーパーユーザーは問題なく実行できます。
どうすれば一般ユーザーで実行できるのでしょうか。
ご教示いただけますでしょうか。
以下のコマンド:
php -i | grep -e configure -e extension_dir
を実行してみてください。「Configure Command =>」行に '--with-pgsql=shared' が付いていたら、pgsqlモジュールは拡張モジュールになっています。
extension_dirを見つけて頂いたのち、
1) extension_dir配下の pgsql.so に一般ユーザのread権限があるか
2) extension_dirより上位の全てのディレクトリに一般ユーザのx権限があるか
確認してみてください。
以下は不要だと思いますがご参考までに。
コメント(1件)
ものすごく遅くなりましてすいません!
khoshi3 さん、教えていただいたコマンドでは
--with-pgsql のみでsharedはありませんでした。
結局、一般ユーザーでは読み取り権限がない理由が
分かりませんでした。
felix33jp さん、そのコマンドはさすがに
知ってますよ。777で試しましたがだめでした。
お二方、ご回答ありがとうございました。