0

以前の質問に加えて、別の問題が発生したため、新しい質問を作成することにしました。

現在、bash スクリプトを実行する php スクリプトを呼び出しています。php スクリプトは次のようになります。

chdir('/home/');
$output = shell_exec('./do.sh');
echo "<pre>$output</pre>";

do.sh には以下が含まれます。

#! /bin/bash

echo 12;
dd if=/dev/urandom of=test.test bs=1048576 count=2

問題は次のとおりです。

端末から呼び出すと./do.sh、すべて正常に動作します: test.test が作成され、出力が12

ただし、phpファイルから呼び出すと、出力12も同様ですが、ファイルは作成されていません。私はbashスクリプトについてほとんど何も知らないので、なぜこれが起こっているのかわかりません...

4

1 に答える 1

3

PHP safe_mode が有効になっているかどうかを確認します。/etc/php.ini ファイルでオフにする必要があり、明らかにファイルシステムのアクセス許可を確認してください。

于 2012-06-15T15:19:44.443 に答える