在PHP中获取和验证Referer的技巧有以下几种方式:
使用$_SERVER[‘HTTP_REFERER’]获取Referer头信息:$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';使用preg_match函数验证Referer的格式:$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';if(preg_match('/^https?:\/\/(www\.)?example\.com/', $referer)){ // Referer符合指定的格式} else { // Referer不符合指定的格式}使用parse_url函数解析Referer并验证域名:$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';$referer_host = parse_url($referer, PHP_URL_HOST);if($referer_host == 'example.com'){ // Referer域名符合指定的格式} else { // Referer域名不符合指定的格式}使用HTTP_REFERER的值进行验证:$referer = $_SERVER['HTTP_REFERER'];if (strpos($referer, 'example.com') !== false) { // Referer包含指定的域名} else { // Referer不包含指定的域名}需要注意的是,Referer头信息是由浏览器提供的,因此可能会被篡改或者不存在,因此建议在验证Referer时要考虑到这些情况并进行适当的处理。


