以下是一个简单的PHP脚本实例,用于防止镜像网站(即复制你的网站内容并使用)的访问。这个脚本通过检查HTTP_REFERER头部来限制访问,如果请求不是直接从你的网站发起的,则拒绝访问。
```php

// 禁止镜像网站的访问
// 定义允许访问的域名列表
$allowed_domains = array(
'example1.com',
'example2.com',
'example3.com'
);
// 获取HTTP_REFERER
$referer = $_SERVER['HTTP_REFERER'];
// 检查是否为允许的域名
$allowed = false;
foreach ($allowed_domains as $domain) {
if (strpos($referer, $domain) !== false) {
$allowed = true;
break;
}
}
// 如果不是允许的域名,则重定向到首页或显示错误消息
if (!$allowed) {
// 重定向到首页或其他页面
header('Location: /');
exit;
}
// 如果是允许的域名,继续正常处理请求
// ... 你的网站代码 ...
>
```
| 变量名 | 说明 |
|---|---|
| `$allowed_domains` | 一个包含允许访问的域名的数组。如果请求的域名不在这个数组中,则访问将被拒绝。 |
| `$referer` | 包含HTTP_REFERER头部的值,它通常表示请求的来源网站。 |
| `$allowed` | 一个布尔变量,用于指示请求是否来自允许的域名。 |
| `foreach` | 用于遍历允许的域名数组。 |
| `strpos` | 检查HTTP_REFERER中是否包含允许的域名。 |
| `header` | 发送HTTP头信息,这里用于重定向到首页。 |
| `exit` | 终止当前脚本的执行。 |
请注意,这种方法并不是完全安全的,因为HTTP_REFERER可以被用户修改。更安全的方法可能包括使用更复杂的验证机制,如IP地址检查、会话管理等。







