私は、ubuntuサーバーでphpのexec()関数を使いたいと思います。 問題は、私はたまにエラーが発生し、コマンドが見つからないということです。 /エコー::私にはphpのexec()のシェルを変更するには
を見つけていない、私はbashのを使用しているしたい場合、PHPは、shシェルを使用しているように、それが見え例えば
exec("echo 123");
プリント
SHを使用して。 私は/ etc/passwdのwww-dataのシェルを変更しようとしましたが、どちらも助けにはなりませんでした。
誰かがどこから問題が発生しているのか、あるいは私がphpのubuntuユーザーのためにシェルを変更する方法を知っている人はいませんか?
おかげで、ティモ
[EDIT]
はたぶんこのことができます:
私はティモとしてSSHからbashスクリプトを呼び出し、このスクリプトは、execを使用した、PHPスクリプトを呼び出します。私はそれが奇妙に聞こえるが、それはより大きい開発環境の一部であることを知っている...
重要なのは、execの中のスクリプトが実行されているユーザのことです。
[EDIT]
今では私は関与して別の権利の問題がなければならないことを考え出しました。 私がexecの中からbashスクリプトtest.sh(完全パスで!)を呼び出そうとしても、php test.phpはちょうど言うでしょう。
SH:/test.shは:
あなたには超高速応答があります。残念ながら、それは問題を解決しませんでした。/bin/echoは動作しません。あなたが見ることができるように、私が実際にやってみたかった何 この は/ usr/binに/ mysqlの--user = --password =空自mydbという<./dump.sql 空自で、私も絶対パスを使用しました。エコーはもっとシンプルにするための一例にすぎません... 他のアイデアは? – Timo