【发布时间】:2016-01-22 11:55:34
【问题描述】:
在我正在开发的 wordpress 网站中,我的数字产品存储在 uploads 文件夹中。我发现当您知道 url 时,该文件夹是可以公开访问的。 因此,当我输入http://my-site.com/wp-content/uploads 时,我会得到一个目录列表,其中包含所有公开的文件,易于下载。这当然不是我想要的。我在网上找到了一个使用这个 .htaccess 代码的解决方案:
IndexIgnore *
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?my-site\.com/ [NC]
RewriteCond %{REQUEST_URI} !hotlink\.(gif|png|jpg|doc|xls|pdf|html|htm|xlsx|docx) [NC]
RewriteRule .*\.(gif|png|jpg|doc|xls|pdf|html|htm|xlsx|docx)$ http://my-site.com
这很好,每个输入 url 的人都会被重定向到主页。 购买商品的下载进展顺利,因为请求来自站点内部。但是有一个徽标文件(在 WooCommerce 电子邮件中使用)必须是可访问的。现在,电子邮件中没有显示徽标,因为系统认为这不是来自站点内的请求,因此访问被拒绝。我可以使用上述代码的更新版本授予对该文件的访问权限吗?如果可以,我必须进行哪些更改?请指教。
你很快就会收到 HTH。
【问题讨论】: