重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

いつも参考にさせていただいております。
早速質問をさせていただきます。

PHPのプログラムをcronを動かしているのですが以下のエラーがでます。
------------------------------
PHP Warning: Unknown(): Unable to load dynamic
library './php_gd2.dll' - ./php_gd2.dll: cannot open shared
object file: No such file or directory in Unknown on line 0
------------------------------
ライブラリがないと怒られているようですが、この回避方法は
ありますでしょうか?
ご教授よろしくお願いいたします。

環境
PHP:Version 4.3.2
Apache:2.0.40 (Red Hat Linux)

A 回答 (2件)

この手のエラーは、chrootしているときか、環境変数がただしく設定されていない時、またスクリプトが特定のカレントディレクトリを想定して書かれている時に起きることが多いです。



当然手動で動かしたときにはちゃんと動作するのですよね。
.profileとか.cshrcなどで設定している環境変数はcronで起動したときには設定されないので、必要な環境変数を設定するシェルスクリプトなどを介してPHPを起動する必要があるのかも知れません。

cronに
pwd > /tmp/pwd.out
env > /tmp/printenv.out
などといった1行スクリプトをcronに登録して、環境変数とカレントディレクトリを調べてみて、自分の対話シェルでの環境変数と比べてみればいかがでしょうか。
    • good
    • 0
この回答へのお礼

a-saitoh さんご回答ありがとうございます。

> 当然手動で動かしたときにはちゃんと動作するのですよね。
エラーは出ますが、PHPのプログラムは正常に動作しています。

> pwd > /tmp/pwd.out
----------------------------------------
/root
----------------------------------------

> env > /tmp/printenv.out
----------------------------------------
SHELL=/bin/sh
PATH=/usr/bin:/bin
PWD=/root
SHLVL=1
HOME=/root
LOGNAME=root
_=/usr/bin/env
----------------------------------------

と書き出されていました。

お礼日時:2006/03/08 15:18

あれ、LinuxベースでDLLを読み込んでるんですか?


通常は.soとかになりませんでしたっけ。

間違ってるならphp.iniでモジュールはずしてみたらどうですかね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!