PHPのhash_file関数でファイルの改ざんを検知する方法
サイト内の特定の数ページのみ簡易的なものでも良いので自動でファイルの改ざんチェックを行ってほしいと要望を受けた。差分を出してチェックするのは大変そうだけど簡易的なもので良いのであればhash_file関数でハッシュ値を比較するのが良さそう。以下に簡単な使い方をメモ。
利用方法
ソースコード
<?php $file = './test.js'; var_dump(hash_file('sha256', $file)); //string(64) "2f3019ac80d538665733681f971504097d3d796ec5a91bb69797967b08ab5802"
解説等
ファイルの内容からハッシュ値を生成できるので、値をデータベース等に格納しておき、値が異なっていれば通知を行うような形でいけそう。後はCronで自動実行すれば良い。
リファレンス
hash_file
関連記事
-
-
メールサーバーを構築せずにGmailのSMPTを使ってPHPでメール送信
メールサーバーが立てられなかったり、無料サーバーのため使えなかったりといった場合 ...
-
-
CodeIgniter4でコントローラ実行の前後に指定したイベントを実行する方法
CodeIgniter4で特定の条件の場合は指定したページにリダイレクトさせたい ...
-
-
CAPTCHAに代わる無料のツール「Cloudflare Turnstile」の導入方法
CAPTCHAと言えばGoogleのreCAPTCHAを思い浮かべるが、稀にCl ...
-
-
PHPでdatetime型のデータを年月日時分秒に分割する方法
datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちex ...
-
-
Composerで後から別のパッケージを追加する方法と削除する方法
Composerで何らかのパッケージをインストールし、後から別のパッケージを追加 ...