目录的PHP安全性
我想知道我的方法是否既安全又是实现文件引用的好方法。我理解您可以使用:目录的PHP安全性,php,security,Php,Security,我想知道我的方法是否既安全又是实现文件引用的好方法。我理解您可以使用: include $_SERVER['DOCUMENT_ROOT'] . "includes/config.php" 引用PHP脚本中的文件。但是,我假设如果我在庄园中使用相同的调用,那么它将是一个安全漏洞,例如: <img src="<?php echo $_SERVER['DOCUMENT_ROOT'] ?>/images/image.jpg" /> 通过这种方式,我总是知道我需要从根目录引用,
include $_SERVER['DOCUMENT_ROOT'] . "includes/config.php"
引用PHP脚本中的文件。但是,我假设如果我在庄园中使用相同的调用,那么它将是一个安全漏洞,例如:
<img src="<?php echo $_SERVER['DOCUMENT_ROOT'] ?>/images/image.jpg" />
通过这种方式,我总是知道我需要从根目录引用,前端用户将无法看到我的文件结构。这是一个好方法吗
提前谢谢你
我假设,如果我在这样的庄园中使用相同的调用,这将是一个安全漏洞:
<img src="<?php echo $_SERVER['DOCUMENT_ROOT'] ?>/images/image.jpg" />
/images/image.jpg/>
这不是一个安全漏洞(*),它只是不起作用。
是客户端访问的外部URL地址;文档\u ROOT
是服务器脚本使用的内部文件地址
文档根是与外部根url(/
)对应的文件系统路径。因此,如果您的文档根是/home/me/www-data
,则提供给浏览器的图像将是src=“/home/me/www-data/images/image.jpg”“
,浏览器将向服务器请求URL/home/me/www-data/images/image.jpg
,服务器将在文档根目录中查找该文件:/home/me/www-data/home/me/www-data/images/image.jpg
。由于该文件路径可能不存在,服务器会用404
进行回复,您会得到一个损坏的图像
(*:嗯……除非您的文档根目录碰巧有HTML特殊字符,如
您在这里缺少一些基本字符,请查看我对这个类似问题的回答:我很抱歉,但我不理解您对另一篇文章的回答。我实现了这些更改,它适用于客户端的图像和Includei你是否暗示存在安全问题?
<img src="<?php echo $_SERVER['DOCUMENT_ROOT'] ?>/images/image.jpg" />