防止WordPress网站被镜像的方法

1、图片onerror与js代码方案

通过拆分域名链接与镜像站比对,然后用img标签src空值触发onerror来执行js比对,比对失败则跳转回源站。

代码如下:(复制粘贴到主题的functions.php最后一个?>之前)
add_action('wp_footer','deny_mirrored_websites');

function deny_mirrored_websites(){
    
$currentDomain = 'www.liming." + "hk'; //此处自行拆分一下自己的域名即可 如不需www二级可以去掉
    
echo '<img style="display:none" src=" " onerror=\'var str1="'.$currentDomain.'";str2="docu"+"ment.loca"+"tion.host";str3=eval(str2);if( str1!=str3 ){ do_action = "loca" + "tion." + "href = loca" + "tion.href" + ".rep" + "lace(docu" +"ment"+".loca"+"tion.ho"+"st," + "\"' . $currentDomain .'\"" + ")";eval(do_action) }\' />';

}

html静态版本

是上面的变种,只是把上面卸载js中的用写在静态代码里了。
<img style="display:none" src=" " onerror='var currentDomain="luoxiao123." + "cn"; var str1=currentDomain; str2="docu"+"ment.loca"+"tion.host"; str3=eval(str2) ;if( str1!=str3 ){ do_action = "loca" + "tion." + "href = loca" + "tion.href" + ".rep" + "lace(docu" +"ment"+".loca"+"tion.ho"+"st," + "currentDomain" + ")";eval(do_action) }' />

以上两种方案都需要将代码中的域名替换为自己的域名!

2:UA判断方案

代码通过php判断UA为空或含有PHP的请求,否则弹出提示并禁止打开
/**
* 
**/
if(!is_admin()) {
add_action('init', 'deny_mirrored_request', 0);
}
function deny_mirrored_request()
{
$ua = $_SERVER['HTTP_USER_AGENT'];
if(!$ua || preg_match('/PHP/i', $ua)) {
header("Content-type: text/html; charset=utf-8");
wp_die('请勿采集本站,因为采集的站长木有小JJ!');
}
}

优化版本,判断更多请求样式:
//防止恶意HTTP_USER_AGENT采集
add_action('wp_head', 'deny_mirrored_request', 0);
function deny_mirrored_request()
{
$ua = $_SERVER['HTTP_USER_AGENT'];
$now_ua = array('FeedDemon ','BOT/0.1 (BOT for JCE)','CrawlDaddy ','Java','Feedly','UniversalFeedParser','ApacheBench','Swiftbot','ZmEu','Indy Library','oBot','jaunty','YandexBot','AhrefsBot','MJ12bot','WinHttp','EasouSpider','HttpClient','Microsoft URL Control','YYSpider','jaunty','Python-urllib','lightDeckReports Bot','PHP'); 
if(!$ua) {
header("Content-type: text/html; charset=utf-8");
wp_die('请勿采集本站,采集者木有小JJ!请正常访问,并认准【龙笑天下网】官方网址!');
}else{
    foreach($now_ua as $value )
    if(eregi($value,$ua)) {
    header("Content-type: text/html; charset=utf-8");
    wp_die('请勿采集本站,采集者木有小JJ!请正常访问,并认准【李明個人網站】!');
    }
}
}

以上就是我找到的并且亲身验证的两种方案!当然还有nginx、.htaccess等方法!大家可以结合起来使用!方法多多,欢迎大家评论,分享更多切实有效的防镜像站办法!
原文地址:http://bk.likinming.com/post-687.html
温馨提示:文章内容仅代表作者个人观点,不代表博客之家赞同其观点和对其真实性负责!
日期:2017年10月09日 星期一   分类:好文分享   浏览(459)

留言/评论:◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

填写好QQ号码,任点空白处自动获取

昵称

邮箱

网址

网站提交

  • 名称:
  • 网址:
Copyright © 2012 - 2017 by 李明关于本站免责声明本站下载站点地图sitemap广告联系