サーバーでファイルを取得するシステムがあります。システムが取得するファイルを簡単に変更できるようにするために、php ページに簡単なリダイレクトを作成しました。
しかし今は、どのシステムがいつ接続されたかを追跡したいと考えています。各システムは、自分のページに接続するときに GET で ID を送信するようになりましたが、ファイルを書き込むのに苦労しています。
呼び出されるリンクはhttp://mysite.com/smtg/get.php?i=XX:XX:XX:XX:XX:XXです
含まれるもの:
<?
$fp = fopen('http://mysite.com/smtg/log.txt','a+');
fseek($fp,SEEK_END);
$w=$_GET['i']."\r\n";
fputs($fp,$w);
fclose($fp);
header('Location: http://mysite.com/smtg/file.txt', true, 302);
exit();
?>
空のファイルを作成してサーバーに配置しようとしましたが、許可は664ですが、更新されません。
ブラウザとシステムの考えからリダイレクトが機能します。
編集:
リダイレクトを削除すると、次のようになります。
test
Warning: fopen(/smtg/log.txt): failed to open stream: No such file or directory
in /var/www/mysite.com/smtg/get.php on line 5
Warning: fseek() expects parameter 1 to be resource, boolean given
in /var/www/mysite.com/smtg/get.php on line 6
Warning: fputs() expects parameter 1 to be resource, boolean given
in /var/www/mysite.com/smtg/get.php on line 8
Warning: fclose() expects parameter 1 to be resource, boolean given
in /var/www/mysite.com/smtg/get.php on line 9
ログファイルが見つからないようですが、無い場合は作成されるのではないでしょうか?
ファイルはサーバー上にあり、空ですがここにあります ( http://mysite.com/smtg/log.txt )。