Php .htaccess以阻止文件夹中的文件

Php .htaccess以阻止文件夹中的文件,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我对.htaccess有疑问 Options -Indexes ErrorDocument 403 error.php 这是我的密码: index.php Welcome Page <img src='image/one.png'> 我读了下面的问题,但它并没有让我明白 如何更新.htaccess文件使之成为可能 您可以进行基于推荐人的检查,以防止直接访问图像。将此规则放在根目录中。htaccess: RewriteEngine On RewriteCond %{HTTP_

我对.htaccess有疑问

Options -Indexes
ErrorDocument   403 error.php
这是我的密码:

index.php

Welcome Page
<img src='image/one.png'>
我读了下面的问题,但它并没有让我明白

如何更新.htaccess文件使之成为可能


您可以进行基于推荐人的检查,以防止直接访问图像。将此规则放在根目录中。htaccess:

RewriteEngine On

RewriteCond %{HTTP_REFERER} !localhost [NC] 
RewriteRule \.(jpe?g|gif|bmp|png)$ - [F,NC]

但是请记住,HTTP_REFERER可以由客户端进行操作。

这在有权限的情况下是不可能的,浏览器“通过代码”请求图像,就像用户键入url一样。唯一可能做到这一点的方法是在每次生成页面时通过php页面创建一个一次性url,但这就消除了缓存的优势。我们无法使用.htaccess实现这一点。您的代码是否允许用户通过在url中提供路径来访问文件?它应该允许web请求访问图像和文件。图像应在网页上可见,不得直接访问。通过此代码,即使在不正确的网页中也无法访问图像。阅读更多关于HTTP_REFERER如何工作的信息。您自己的页面将传递一个有效的推荐人字符串。请确保您在上面的RewriteCond%{HTTP_REFERER}中替换了实际域名。实际上我在本地主机上使用,为了您理解,我再次告诉您。。这些图像应该在网页中可见,但我不应该通过键入localhost/xx/img/a.png或localhost/xx/imgI直接访问我。我第一次理解了这一点。如果使用localhost,您的条件将是:RewriteCond%{HTTP\u REFERER}!localhost或查看更新的答案