php 防镜像网,wordpress防止网站被镜像实用方案教程
看見我發的圖了?相信大家也猜到了,我的網站被鏡像了!那么我們不可能坐視網站一直被鏡像,讓自己網站都流量流向別人的腰包!那么我們要怎么做呢?網上找了很多代碼都無效!
在這里分享幾個逍遙實踐過的切實有效的代碼:
1、圖片onerror與js代碼方案
龍笑天下分享的通過拆分域名鏈接與鏡像站比對,然后用img標簽src空值觸發onerror來執行js比對,比對失敗則跳轉回源站。
代碼如下:(復制粘貼到主題的functions.php最后一個?>之前)
add_action('wp_footer','deny_mirrored_websites');
function deny_mirrored_websites(){
$currentDomain = 'luoxiao123." + "cn'; //此處自行拆分一下自己的域名即可
echo '';
}
html靜態版本
是上面的變種,只是把上面卸載js中的用寫在靜態代碼里了。將以下
以上兩種方案都需要將代碼中的域名替換為自己的域名!
2:UA判斷方案
來自張戈的代碼通過php判斷UA為空或含有PHP的請求,否則彈出提示并禁止打開
/**
* WordPress 禁止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://www.ilxtx.com/mirrored-website.html
* 出自:zhange.net
*/
//防止惡意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等方法!大家可以結合起來使用!方法多多,歡迎大家評論,分享更多切實有效的仿=防鏡像站辦法!
總結
以上是生活随笔為你收集整理的php 防镜像网,wordpress防止网站被镜像实用方案教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FDD与TDD
- 下一篇: drupal 7 启用 签名设置 fil