[PHP-users 25927] atコマンドについて

mukkuri mukkuri @ cyclops.co.jp
2005年 6月 27日 (月) 23:37:19 JST


こんばんは。ムックリと申します


すみません!途中で送信してしまいました。
気をとりなおしまして・・


atコマンドでphpファイルを実行しようとしていますが、
ターミナルで直接コマンドを打つと動作しますが、WEB上から動かすと動作しません。 




[ 環境 ]
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Red Hat Enterprise Linux ES release 3
apache1.3.33
php4.3.11
postgresql7.4.3
mod_ssl-2.8.22-1.3.33
openssl-0.9.6b
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


■testCommand.php
<?php
$time="23:05 2005-06-27";
$command = "at -f /--PATH--/testAt.txt ".$time;
exec($command, $returnarray, $returnvalue);
?>


■testAt.txt
php /--PATH--/test.php


■test.php
#!/usr/local/bin/php
<?php
$handle = fopen('/--PATH--/test.txt', 'a');
fwrite($handle, "\n".date(YmdHis));
fclose($handle);
?>


ターミナルで直接コマンドを打った場合::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--- ]# at -f /--PATH--/testAt.txt 23:17 2005-06-27
job 96 at 2005-06-27 23:17

■■結果■■
test.txtにテキストが書き出される [ 期待通り ]
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


http:// ------/testCommand.phpを実行した場合::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
■■結果■■
--- ]# atq
97      2005-06-27 23:25 a nobody

と、ジョブは登録されますが、実際に実行はされていない感じです。
testCommand.php、testAt.txt、test.php ともにパーミッションは777でやってみてます。



ターミナルで直接コマンドを打った場合とhttp:// ------/testCommand.phpを実行した場合の
違いといえば、ユーザーが root と nobody ということですがat.allowは作らず、at.denyは空にしているので
すべてのユーザーが実行できるはずだし・・・


何かご存知の方、アドバイスお願いします。








PHP-users メーリングリストの案内