可能重复:
Putting core classes above the web root - good or bad idea?
我一直在读,最好将mysql连接凭据(无论是类、定义等)放在web根目录(www文件夹上方)之外。
这是为什么?如果凭证在一个.php文件中,那么该文件是否可以通过浏览器访问并不重要,对吧?
最佳答案
这是一种预防措施。如果有人意外地在您的apache服务器中禁用php求值,或者在.htaccess文件中更改了apache设置,则该文件可以像任何纯文本文件一样被服务。或者,如果您不小心忘记了一个php开始标记,它将像纯文本一样被重新设计。并不是说你会犯这样愚蠢的错误,但也许未来的新手在你的代码上会犯错误。
当你能阻止一个可能的向量成为可能时,为什么还要让它保持打开状态呢?你只需听从那些开枪打自己脚的人的建议(或者像我一样,开枪打自己的脚和手),然后把证书移到你的docroot之外。