在 CentOS 系统上,使用 Apache2 服务器实现防盗版功能可以通过以下几种方法:
在需要保护的目录中创建或编辑 .htaccess 文件,添加以下内容:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteRule \.(mp4|avi|mov|flv)$ - [F,L]
将 “yourdomain.com” 替换为您的域名。这将阻止未经授权的用户访问该目录中的媒体文件。
确保已启用 mod_rewrite 模块。在终端中运行以下命令:
sudo yum install mod_rewrite
然后,在需要保护的目录中创建或编辑 .htaccess 文件,添加以下内容:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteRule ^(.*)$ - [F,L]
将 “yourdomain.com” 替换为您的域名。这将阻止未经授权的用户访问该目录中的所有文件。
创建一个 PHP 脚本(例如:check_referer.php),并添加以下内容:
<?php
$allowed_referers = array('http://yourdomain.com', 'https://yourdomain.com');
$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
if (!in_array($referer, $allowed_referers)) {
header('HTTP/1.0 403 Forbidden');
echo 'Access denied';
exit;
}
?>
将 “yourdomain.com” 替换为您的域名。然后,在需要保护的文件中包含此脚本:
<?php include 'check_referer.php'; ?>
这将检查用户的引用来源,如果不是来自允许的域名,将显示 “Access denied” 并阻止访问。
请注意,这些方法并非绝对安全,因为 HTTP 请求头可以被伪造。然而,它们可以提高防盗版的难度,对于大多数用途来说已经足够了。