刚开始建站的时候就遇到过网站恶意镜像,不过不是我的站,是博友的站,而且遇到过不止一次这个情况,由于我域名使用的是泛SSL,并且有多个子域名解析到服务,突然发现访问某些已经弃用并且未删除解析的子域名会直接打开我的博客。正好这两天在微调网站的前台样式,就顺便添加了一个小功能,以防不时之需。

原理

首先介绍一下防止镜像的思路,由于有之前使用PHP实现301跳转的经验,所以这次也是在服务器层面进行301跳转的处理。

我们使用PHP来判断当前访问的域名是否和我们自己的域名一致,如果不一致,则直接301跳转到我们的网站。

假如我们的域名是a.com,这时有恶意人士使用b.com对我们的站点进行反向代理,那么我们就可以通过判断a.com = b.com?来决定是否进行跳转,如果不一致,那么直接301跳转。

实现方式

实现的方式很简单,只需要简短的几行代码即可,将下方代码,放到网站的header或者footer之类的每个页面都会调用的php文件内,然后将$bkcom的值修改为你的域名,不需要写协议(http)。

<?php
$nobkcom = $_SERVER['HTTP_HOST'];
$bkcom = "blog.kaygb.com";    //你的域名
if($bkcom != $nobkcom){
      header('HTTP/1.1 301 Moved Permanently'); //添加301状态码
      header("location://".$bkcom);//跳转页面    
  }
?>

只要你的网站是基于PHP的,那么久可以使用上方代码,typecho或者wordpress等程序可以直接添加在主题的head文件或者footer文件。

这里,我放在了主题footer文件中

image-20201113202044985

版权声明
本文作者珂泽
文章来源风也雨忆笙
原文链接
转载说明非特殊说明文章均为原创,页脚已标识是否允许转载,转载请注明出处!感谢您的支持!
最后修改:2020 年 11 月 13 日 08 : 24 PM
如果您觉得我的文章有帮助,请随意赞赏!