我很难把数据放在安全的地方。我想做的是允许我的本地主机访问文件来创建我的页面,但禁止所有其他访问。
我开始试图写一个。htaccess文件,以防止访问子文件夹,但在这里读到,这是一个糟糕的方式来做事情,并陷入混乱,所以,按照建议,我试图移动文件的public_html目录:
结构为:
bits_folder
images
testimage.jpg
files
testfile.php
public_html
application
callingfile.php
使用这种布局,如果我尝试从浏览器访问bits_folder中的任何内容,我会得到错误404。然而,Callingfile.php似乎无法访问测试,但可以包含PHP测试文件。
callingfile.php:
require("../../bits_folder/files/testfile.php"); //works and displays file echo
<img src="../../bits_folder/images/testimage.jpg" //gives broken image
两个文件(testestimate和testfile)都在它们应该在的文件夹中。
我假设这种行为的原因是img是一个http请求后的页面被服务,因此将被拒绝,但我不是服务器专家。是这样吗?这能被克服吗?我应该用另一种方式吗?
只放置脚本和图像供PHP在public_html外部使用。图像和其他以src形式或以其他方式链接在HTML/JavaScript中的内容会导致浏览器请求这些内容。web服务器将拒绝从公共目录之外为它们提供服务。
您的浏览器将被拒绝访问www.example.com/../../bits_folder/images/testimage.jpg