0

嗨,我正在阅读 PHP 教科书。现在我正在学习如何使用 mysqli 连接到数据库。

这是脚本中的一些代码:

DEFINE ('DB_USER', 'myname');
DEFINE ('DB_PASSWORD', 'local123');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'sitename');

然后该脚本使用 mysqli 建立数据库连接。

一段内容为“由于文件包含信息 - 必须保密的 db 访问数据,脚本将使用 .php 扩展名,因为即使恶意用户在浏览器中运行脚本,他们也不会看到脚本的内容。”

我很好奇,并在打开 httpfox 的情况下运行了脚本。看起来连接确实显示了所有敏感信息!如果单击内容选项卡。

所以使用 .php 不会增加安全性?

4

2 回答 2

1

另请注意,在 .php 文件中包含敏感信息(例如数据库登录名)并不妨碍未经授权的用户访问该文件。运行文件的 Web 服务器的文件系统上使用的权限以及 Web 服务器本身的安全性将对恶意用户是否能够访问文件内容产生巨大影响。

话虽如此,据我所知,没有 100% 安全的方法可以将数据库登录(或任何敏感信息)存储在 PHP 文件中。

于 2013-08-17T15:09:14.797 回答
0

确保 PHP 代码包含在<?php和中?>。未包含在PHP 中<?php并由?>PHP 解释为应发送到浏览器的输出的代码。所以你应该做类似的事情

<?php

DEFINE ('DB_USER', 'myname');
DEFINE ('DB_PASSWORD', 'local123');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'sitename');

?>
于 2013-08-17T15:04:33.543 回答