私は現在、cronで自動化しようとしているスクリプトを作成中です。ターミナルを介してスクリプトを実行するのは問題ありませんが、crontabでスクリプトを実行しようとすると、いくつかの問題が発生しています。旨を検証しようとしたときにcronでphpスクリプトを実行しているときに相対パスまたは絶対パスを使用するかどうかは重要ですか?
DOMDocument::loadXML()とDOMDocument::validate()を経由して私のスクリプトのロードと検証し、XMLファイルの一部とPHPがエラーをスローします:
Failed to load external entity: /linuxuser/homefolder/my_dtd.dtd
xmlファイル内では、DTDは次のように設定されています
../../../../../../../my_dtd.dtd
サーバーの設定に誤りがありますか、この時点で私のPHPコードに問題がある可能性は高いですか?それはxmlファイルに相対的なパスではなく、自分のlinuxホームディレクトリをつかむようです。他の誰かがこのような問題を見ているのか、それとも私が正しい方向に向いているのか疑問に思うだけです。ありがとう。
もちろん、そうではありません。相対パスか絶対パスかにかかわらず、パスは*正しいものでなければなりません。 –