我有播放视频播放器播放特定视频的player.php文件。如何阻止某些网站访问此文件并使用它在该网站上嵌入视频。换句话说,我可以在player.php中使用什么代码来阻止某些网站仅访问此文件。
答案 0 :(得分:1)
如果您使用的是Apache并且可以访问.htaccess
文件,我建议您使用它。这个page是一个很好的资源。
你可以尝试这样的事情,假设player.php在你的网络根目录中:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^player\.php.*
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?your-domain\.com/ [NC]
RewriteRule .* http://your-domain.com/please-dont-steal\.php[NC]
答案 1 :(得分:1)
你最好处理这个问题服务器端,所以PHP是一个不错的选择。您需要检查HTTP referrer标头,看看您是否正在进行热链接。
答案 2 :(得分:1)
您可以在三个级别上执行此操作。
1)网络服务器
例如,如果您在Apache服务器上,则使用.htaccess文件。 这可以通过重写将其推送到某个虚拟文件或404或您喜欢的任何内容来完成。例如:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} badsite\.com [NC]
RewriteRule .* - [F]
这实际上是理想的方式,因为它排除了解释PHP的必要性。
2)PHP
在您的页面中,使用$ _SERVER ['HTTP_REFERER'](如果没有引荐来源,则可能无法设置)并在字符串中搜索相关域。
这是第二好的,如果你不能改变Apache配置,它可能是你唯一的选择。
3)Javascript
并不真正阻止访问任何内容,因为检查发生在客户端(他们在运行之前已经下载了player.php和Javascript本身)。如果他们直接访问视频或其他任何内容,它将无法阻止他们获取该文件。您将使用document.referrer并像PHP示例一样搜索域。
答案 3 :(得分:-1)
使用Apache mod-rewrite和/或.htaccess可以做很多技巧