<分区>
Possible Duplicate:
Putting core classes above the web root - good or bad idea?
我一直在读到,将 MySQL 连接凭据(无论是类、定义等)放在 Web 根目录之外(在 www 文件夹上方)是最佳做法。
这是为什么?如果凭据位于 .php 文件中,那么该文件是否可通过浏览器访问并不重要,对吧?
<分区>
Possible Duplicate:
Putting core classes above the web root - good or bad idea?
我一直在读到,将 MySQL 连接凭据(无论是类、定义等)放在 Web 根目录之外(在 www 文件夹上方)是最佳做法。
这是为什么?如果凭据位于 .php 文件中,那么该文件是否可通过浏览器访问并不重要,对吧?
最佳答案
这是一种预防措施。如果有人不小心禁用了您的 apache 服务器中的 php 评估或更改了 .htaccess 文件中的 apache 设置,则可以像任何纯文本文件一样提供该文件。或者,如果您不小心忘记了 php 开始标记,它将像纯文本一样重新生成。并不是说您会犯这种愚蠢的错误,而是说将来使用您的代码的新手可能会犯错误。
当你可以阻止它成为可能时,为什么要打开一个可能的向量?只需听取其他已经射中自己的脚(或者像我一样,射中双脚和一只手)的人的建议,并将凭据移到您的文档根目录之外。
关于php - 为什么将 MySQL 凭据放在 www 目录之外?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13976401/