主要的PHP代码:
/**
* 获取网站来路并分析
* @author Xiaobai <[email protected]>
* @time 2018年6月27日
* @param string $referers 自定义ua
* @return strting/bool 输出获取到的来路
*/
function get_referer($referers=''){
// 更改为自己的网址
// 避免来路重复
$localhost = 'www.xiaobaibk.com';
/*获取网站来路*/
$referer = $referers ? $referers : $_SERVER['HTTP_REFERER'];
if(!$referer){
return false;
}
/*获取网站host*/
$str = parse_url($referer);
if (!$str['host']||$str['host']==$localhost) {
return false;
}
$url = $str['host'];
/*关键词判断类型*/
if(strpos($url,'baidu') !== false){
$url_str = '百度搜索';
}elseif (strpos($url,'sogou') !== false) {
$url_str = '搜狗搜索';
}elseif (strpos($url,'sm') !== false) {
$url_str = '神马搜索';
}elseif (strpos($url,'bing') !== false) {
$url_str = '必应搜索';
}elseif (strpos($url,'google') !== false) {
$url_str = '谷歌搜索';
}elseif (strpos($url,'so') !== false) {
$url_str = '360搜索';
}elseif (strpos($url,'easou') !== false) {
$url_str = '宜搜搜索';
}elseif (strpos($url,'yahoo') !== false) {
$url_str = '雅虎搜索';
}elseif (strpos($url,'xiaobaibk') !== false) {
$url_str = '安全之家';
}else{
/*如果以上都找不到则使用来路域名并截取字数*/
if (strlen($url)>5) $url_str=substr($url,0,10) . '...';
}
return $url_str;
}
百度的语音播报接口:
https://fanyi.baidu.com/gettts?spd=5&source=web&lan=zh&text=等于要发音的内容
PHP调用:
<?php echo get_referer();?>
以下用Js写的,不知道可不可以,你们试试看,实现的方法很多,自己写吧
<script>
window.onload=function(){
var audio=document.createElement('audio');
var url="https://fanyi.baidu.com/gettts?spd=5&source=web&lan=zh&text=";
var str=url+"欢迎来自<?php echo get_referer();?>的朋友访问小白安全博客";
audio.src=str;
document.body.appendChild(audio);
audio.play();
}
</script>
本文作者为Mr.Bai,转载请注明。
有个bug,站内打开也会播报
@F鳥ゎy升哥@F鳥ゎy升哥:具体的代码还是需要你自己改的