Bu sistem mantıken bir kaç farklı yolla yapılabilir.

1. Yöntem sayfada get yönlendirmesi yaparak kontrol sağlayanabilir.
if (!isset($_GET['yenile'])) :
header ("refresh:2;url= https://" . $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']."?yenile=true");
endif;
?>


Reflesh -> yenilemenin kaç saniye sonra gerçekleşeceğini belirtir.

2. Yöntem Cookie kullanılarak sağlanabilir
if(empty($_COOKIE['yeni'])){
header("refresh: 2; url=https://" . $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
setcookie("yeni",time()+3600,time()+3600); }
?>

Yeşil alanda belirttiğim bölümde saniye cinsinden cookienin aktif olacağı süreyi belirtisiniz. Yani 3600 saniye 60 dakikaya eşittir.
Cookie kullanımında ziyaretçi sayfaya tekrar giriş yaparsa 60 dakika (yada belirttiğiniz) süre dolmadan kod çalışmayacaktır.