主要的PHP代码:
Source Code
- /**
- * 获取网站来路并分析
- * @author Xiaobai <admin@xiaobaibk.com>
- * @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;
- }
百度的语音播报接口:
Source Code
- https://fanyi.baidu.com/gettts?spd=5&source=web&lan=zh&text=等于要发音的内容
PHP调用:
Source Code
- <?php echo get_referer();?>
以下用Js写的,不知道可不可以,你们试试看,实现的方法很多,自己写吧
Source Code
- <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升哥:具体的代码还是需要你自己改的