以下是一个使用PHP来禁止镜像网站访问的实例。这个例子中,我们将使用一个简单的检查来阻止其他网站使用你的图片资源。
实例说明
在这个实例中,我们将通过检查HTTP_REFERER来决定是否允许访问。如果请求的来源不是我们自己的网站,那么将阻止访问。
实例代码
```php
// 禁止镜像网站访问的PHP脚本
// 定义允许访问的域名
$allowed_domains = array(
'www.example.com',
'subdomain.example.com'
);
// 获取请求的域名
$referer_domain = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST);
// 检查是否是允许访问的域名
if ($referer_domain && !in_array($referer_domain, $allowed_domains)) {
// 如果不是,设置HTTP状态码为403禁止访问
header('HTTP/1.1 403 Forbidden');
echo 'Access denied. This resource is not allowed to be mirrored.';
exit;
}
// 如果是允许访问的域名,继续处理请求
// 这里添加你的其他代码,比如输出图片资源等
>
```
表格说明
以下是上述代码的表格形式,方便阅读和理解:
| 变量/函数 | 说明 |
|---|---|
| `$allowed_domains` | 一个数组,包含允许访问你网站的域名列表。 |
| `$referer_domain` | 通过`parse_url`函数获取请求的HTTP_REFERER中的域名。 |
| `in_array` | 检查`$referer_domain`是否存在于`$allowed_domains`数组中。 |
| `header` | 发送一个HTTP头信息,这里我们发送403状态码,表示禁止访问。 |
| `echo` | 输出一条消息给用户,说明访问被禁止。 |
| `exit` | 退出脚本执行。 |
通过以上代码和表格,你可以轻松理解如何使用PHP来禁止镜像网站访问你的资源。记得根据你的需求调整`$allowed_domains`数组中的域名。