Web サイト ベースのプロキシをブロックしようとしています。これらは通常次の形式です: http://3.hidemyass.com/ip-8/encoded/Oi8vZ29kbGV5ZGVzaWduLmNvLnVrL0xDcmVkaXJlY3QvZnVuY3Rpb25zL2Z1bmN0aW9
これらをブロックする私の理論は、アドレス バーの URL を取得し、それが Web サイト プロキシ経由ではなく、実際に自分のサイトへの直接アクセスであることを確認することです。
ただし、自分のサイトにアクセスしてユーザーの URL をキャプチャしようとすると、この Web ベースのプロキシではなく、自分のサイトの URL であると報告されます。
私はそれを検出する次の方法を試しました:
$url= $_SERVER['HTTP_HOST']; //get the url
$url = $_SERVER["SERVER_NAME"];
これを解決する方法についてのアイデアはありますか?
更新 OK、これの一部を書き直しましたが、常に false を返しているようです...関数内でこれをエコーできるため、$url は正しく渡されます。ただし、一致してfalseを返しているようには見えません
<script>
var url = window.location.href;
<?php $url = "<script>document.write(url)</script>"; ?>
</script>
<?php
//
function checkURLIsSafe($url){
if(preg_match('/www/',$url)){
echo 'true';
} else {
echo 'false';
}
}
checkURLIsSafe($url);
?>