PHPでランダムな文字列を発行して、セッション保存して、それを引き継いだ場合のみ有効なアクセスとする。
っていうのを作った。
こんな感じ。
<blockquote><?php
if ($_GET['token'] == $_SESSION['token']) {
// ちょっと特別な何か
}
$token = getRandStr();
$_SESSION['token'] = $token;
?>
<a href="?token=<?php echo $token; ?>">こっち</a>
</blockquote>
ところがうまくいかない。
<blockquote>$_SESSION = microtime(true);
</blockquote>
で試すと、コンマ数秒ずれて記録されているようだ…。
そして、アクセスログを見てみると、必ず2回のアクセスが発生しているではないかっ。
ブラウザのせい…と疑って、別のブラウザでアクセス。
すると、、、やっぱり二重アクセスにならないっ。
chromeのせいかっ、と思い、さらに調査。
Developer Tools の Network タブで見てみると…
jquery-1.11.0.min.js がアクセスしたページを読み込んでいるっ!
chromeさんのせいではございませんでしたか、ゴメンナサイ(;´Д`)
よーく見てみると(Initiatorのところをクリックしてみた)、
"chrome-extension://pioclpoplcdbaefihamjohnefbikjilc/third_pirty/jquery-1.11.0.min.js"がアクセスしているようだ…。
拡張機能のせいか…
ググる。
"pioclpoplcdbaefihamjohnefbikjilc"はコピペ出来ないので、手で入力。。。途中まで入力して検索!
その正体は…「Evernote Web Clipper」さんでした( ´Д`)=3
試しに無効化すると…はい、普通にできました。
まぁ、普段は無効化しておいて、使う時だけ有効化すればよいか。。
元々ポップアップが鬱陶しかったからね(^_^;)