哦哦。我刚刚意识到,我认为进入我的 MySQL 数据库非常容易。我的网络服务器使用单独的 PHP 脚本连接到服务器,其中包括用户名和密码。如果我错了,请纠正我,但是有人不能在他们的脚本中轻松地要求这个文件,然后就可以完全访问我的数据库吗?
问问题
96 次
2 回答
6
不。
只要您的网络服务器将文件解释为 PHP 脚本,您的 PHP 脚本的源代码就永远不会显示给最终用户。
在 PHP 文件中以纯文本形式拥有 db 凭据是很常见的。
于 2013-01-30T22:12:24.497 回答
1
正如其他人所提到的,当另一台服务器包含您的文件时,服务器将对其进行解析,因此除非配置不正确,否则他们将得到的只是解析后的文件。
但是,出于这个原因,您不应该将数据库登录凭据存储在您的 Web 根目录中。例如,如果您的 Web 根目录是
/home/username/public_html/
然后将文件存储在:
/home/username/db.inc.php // change file name accordingly
然后在你的脚本中,做
require_once('/home/username/db.inc.php');
有人甚至无法从 HTTP 访问该文件,因为它位于您的 Web 根目录之外。
于 2013-01-30T22:25:23.657 回答