我只是想设置“如果'我的网站的规则,我面临的问题很少 我想允许:
if ($_SERVER["HTTP_REFERER"] = "http://t.co/XXXXXX")
{ allowed }
XXXXXX - 每个链接的唯一结尾,因此我需要设置每个以t.co开头的访问都将被接受。我怎样才能做到这一点?提前谢谢。
答案 0 :(得分:4)
使用以下代码段:
if (preg_match('/^https?:\/\/t\.co\//', $_SERVER['HTTP_REFERER'])) {
# allowed
}
顺便说一下,这也会匹配https请求。
或者,您可以使用parse_url,如下所示:
$parsed = parse_url($_SERVER['HTTP_REFERER']);
if ($parsed['host'] === 't.co') {
# allowed
}
请注意,虽然$ _SERVER [' HTTP_REFERER']可能未设置或为空,因此需要额外
if (isset($_SERVER['HTTP_REFERER']))
在两种情况下都很有用。
答案 1 :(得分:0)
只需比较前12个字符:
if (substr($_SERVER["HTTP_REFERER"],0,12) == "http://t.co/" || substr($_SERVER["HTTP_REFERER"],0,13) == "https://t.co/")
{ allowed }
答案 2 :(得分:0)
我的尝试:
if (stripos($_SERVER["HTTP_REFERER"], '://t.co/') === 4
|| stripos($_SERVER["HTTP_REFERER"], '://t.co/') === 5) {
// Allowed