VPS で CentOS を使用しています。Incron をインストールして、ファイルのアップロード用のフォルダーを監視しています。これは、incrontab -e
使用しているコマンドです。
/home/user/public_html/uploads IN_CLOSE_WRITE /usr/bin/php /home/user/public_html/uploads/watcher.php $#
//The $@ sends the file name as montioned in the Icron tutorial here :
これはwatcher.phpの内容です
<?php
$myfile = fopen("text.txt", "a") or die("Unable to open file!");
fwrite($myfile, $argv[1]."\n");//Argument 1 is the name of the file, argv[0] is the script name.
fclose($myfile);
1つのファイル「myphpfile.php」をアップロードすると、Icronが機能し、「text.txt」ファイルに名前を保存しましたが、ファイルを開くと、アップロードされたファイルの名前が非常に多くの行で見つかりました。
text.txt :
myphpfile.php
myphpfile.php
myphpfile.php
myphpfile.php
myphpfile.php
.....
ファイルを 1 つだけアップロードしています。「text.txt」ファイルには 1 行しかないはずです。「w」を使用してファイルを開くことができることはわかっていますが、これはすべてのエントリを削除し、最後のエントリを保存するだけです。"IN_CLOSE_WRITE"
追加された「a」を使用すると、監視イベントとして使用してファイルをアップロードするときに Incron に問題があることが示されます。アップロード ファイルを処理するイベントが見つかりません。助けてください。
ありがとう。