HostMonster:盗链保护背后的代码
出自美国主机知识库
(.htaccess) 盗链保护背后的代码
当别人输入类似like www.mydomain.com/images/这样的正确URL时,保护你/images目录不会显示图片
保护图片在别人窥探之外。
盗链保护,密码保护,或者 chmod 可以帮助你,你要保护一个文件或图片的目录可以有很多种方法。Apache有一个内建的保护目录中文件免于探查眼的方法,该方法使用.htaccess 文件。
当你的浏览器发出一个图片请求时,通常还会发送链接到该图片的页面的URL。下面的.htaccess 文件将使服务器检查这个URL (下面将会提到),如果这个URL是经过你指定授权的,将会发送一个内部标记叫做"locally_linked"。 该内部标记在技术上称为"环境变量"。如果发送的URL不在认证 URLs列表里,标记(或环境变量)就不会被创建。注意到,即使浏览器没有发送任何URL同样会设置"locally_linked" :当访问者通过浏览器或代理隐藏了相关的URL,就会发生这种情况。
网络服务器接下来检查被请求的文件是否具有下面列表里的扩展名 (gif, png, jpg and jpeg).。如果存在,并且"locally_linked"变量已设置,那么将发送图片,否则将会发送错误信息。如果你觉得过于复杂,可以使用盗链管理器或者cpanel里的密码保护图表。
---------------代码----------------------------------------------------------- SetEnvIfNoCase Referer "^http://www.your-domain-name-here.com/" locally_linked=1 SetEnvIfNoCase Referer "^http://www.your-domain-name-here.com$" locally_linked=1 SetEnvIfNoCase Referer "^http://your-domain-name-here.com/" locally_linked=1 SetEnvIfNoCase Referer "^http://your-domain-name-here.com$" locally_linked=1 SetEnvIfNoCase Referer "^$" locally_linked=1 <FilesMatch ".(gif|png|jpe?g)$"> Order Allow,Deny Allow from env=locally_linked </FilesMatch>