2016-07-27 46 views
0

我无法找到如何拒绝直接访问图像文件夹和图像,同时它可以在网页上阅读。如何在脚本中使图像可读,而直接访问被拒绝

感谢您的回答。

+0

你不能。否则,浏览器将无法获取图像 – RiggsFolly

+0

作为一种解决方法,您可以在请求标题中查看referrer。但它不是一个非常安全的方法。某些浏览器设置将忽略此类数据,并且无法显示图像。 –

+0

你使用php会话吗? – Terminus

回答

0

您可以拒绝直接访问图像文件夹,但不能拒绝其中的图像访问,因为浏览器基本上访问这些图像的方式与您在浏览器中访问图像的方式相同。

你可以看到那些网络电话(铬)

Press F12 (Inspect) > Network 

在这里,你会发现列表中的所有调用浏览器发出。

enter image description here


限制访问图像目录

如果你想限制访问图像文件夹,然后进行简单的方法是定义一个空白index.html文件夹内。

或者你也可以把一些虚拟的内容,如:

<!-- index.html --> 
<h3>You're not authorized to view the contents of this page...</h3> 
0

替换所有图像引用:

<img src='/path/to/restricted/folder/image.png' /> 

要:

<?php $base64 = base64_encode(file_get_contents('/path/to/restricted/folder/image.png')); ?> 
<img src='data:image/png;base64,<?=$base64?>' /> 

然后,您可以创建和.htaccess文件夹中的文件并添加它。

deny from all 

但是请记住,这将大大提高网页加载时间的用户,因为所有的图像将被预读,而不是异步读取。