URLにアクセスするとアクショントリガー

URLにアクセスするとアクショントリガー

私が他の人に私のウェブサイトへのリンクを含む電子メールを送信し、その人がその電子メールを訪問することを本当に望んでいるとしましょう。

http://www.example.com/?utm_source=email392

または

http://www.example.com/somefile.pdf?utm_source=email392

定期的な確認でこのURLにアクセスするときに、Linuxでアクション(自動メール送信など)をトリガーするようにするにはどうすればよいですか/var/log/apache2/other_vhosts_access.log

さまざまなソース/ウェブサイト(一部はPHPを使用し、一部はダウンロードするファイルにリンクするなど)に対して行う必要があるため、PHPレベルでこれを行うことはできません。でもPHPを使用しているサイトの場合でも、望ましくないそこから開始するようにそれぞれを変更するindex.phpので、Apacheログの解析方法を好む)

ベストアンサー1

Bashプロセス交換を使用したリアルタイムログ監視:

#!/bin/bash

while IFS='$\n' read -r line;
do
    # action here, log line in $line

done < <(tail -n 0 -f /var/log/apache2/other_vhosts_access.log | \
         grep '/somefile.pdf?utm_source=email392')

プロセスの置き換え内部パイプの出力を読み取りループに供給します<(...)。ログ行自体は変数に割り当てられます$line

ログを表示するには、次の方法を使用します。tail -f、ログに書き込まれる行を出力します。ログファイルが定期的に移動する場合ログの回転、ファイル記述子の代わりにファイルパスを監視するオプションが--follow=name追加されました。--retry

出力は以下から来ます。への輸送grep、URLに一致する関連行をフィルタリングします。

おすすめ記事