2019年08月30日 に初出の投稿

Last modified: 2019-09-02 15:38:45

添付画像

サイトのトップに、日本科学哲学会と科学基礎論学会のトップページ(どちらも "http://pssj.info/," "http://phsc.jp" としてアクセスしている)について、最終更新日を取得できるようにした。ただし、初回はハッシュの差を比べる基準がないので、科学基礎論学会はさきほど初回のスクリプトを実行した日付になっているから、これは無視してもらいたい。

やり方は非常に簡単な PHP スクリプトを当サイトのウェブ・サーバで cron により実行している。毎時5分という巡回スケジュールだから、まぁページが更新されてから1時間くらいで分かるようにはなっている。具体的なコードの中身は、(1) file_get_contents() でトップページのレスポンス(ペイロード)を取得、(2) sha512 でハッシュ化、(3) もともと保存しておいたハッシュ値と比較、(4) ハッシュ値が異なる場合は result.dat に出力してある最終更新日を書き換える、(5) result.dat から、二つのサイトの最終更新日を取り出して表示する。

実は、これはもっと簡単なやり方がある。それはリモートのリソース(つまりウェブ・コンテンツ)のレスポンスとしてヘッダーが返ってくるから、get_headers( "URL", 1 ) で配列にセットしてから "Last-Modified" の値を取ればいいのだ。しかし、科学基礎論学会のサーバはこの値を返さない設定になっているらしく、このやり方は日本科学哲学会のサーバに対してしか使えないため、ハッシュ値を比較する方法で統一してある。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook