我如何只允许从我的域引用的下载?

时间:2016-04-08 作者:SinisterBeard

我想限制下载,以便用户只能访问/uploads 如果他们单击我的域中的链接,即他们无法通过将其粘贴到地址栏或跟踪其他站点(如Google)的链接来访问“/上传”中的任何文件,则返回文件夹。

This question 有一个公认的答案,描述了我想使用wp_rewrite, 但不是怎么做。有人能给我指出正确的方向吗?

1 个回复
SO网友:Phaze Phusion

您提供的链接处理基于用户权限的受限访问。但我从你的问题中得出结论,你想从整体上阻止热链接。

如果您还没有,您应该创建一个.htaccess 根Wordpress目录中的文件(与wp-config.php). 添加以下内容:

# WP writes the following block
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
# WP-written-block ends here

# BLOCK HOTLINKING TO IMAGES
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(.+\\.)?yourwebdomain\\.com(/)?.*$ [NC]
RewriteRule .*\\.(jpe?g|gif|bmp|png)$ [F,NC]
TheBlock Hotlinking 可以修改部件以阻止其他mime类型的文件。

你也可以在谷歌上搜索;wordpress htaccess热链接

更新-谷歌索引图像

您可以添加谷歌。com发送给已接受的推荐人。您的图像将显示在谷歌搜索中,但除您的(和Google.com)以外的任何网站都无法直接链接到它们。

# BLOCK HOTLINKING TO IMAGES
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(.+\\.)?google\\.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(.+\\.)?yourwebdomain\\.com(/)?.*$ [NC]
RewriteRule .*\\.(jpe?g|gif|bmp|png)$ [F,NC]