是否需要取消设置php password变量?

是否需要为我的MySQL数据库取消设置密码变量.

目前,我的“ dbpwd.PHP代码如下:

# database setup
$dbserver = "localhost";
$db_usrname = "blah";
$db_pwd = "blahblahblah";
$dbname = "blah";

但是我在想….这是一个安全的问题..因为任何人都可以这样做:

 <?PHP
 include 'http://www.mywebsite.com/dbpwd.PHP';
 echo $db_usrname;
 echo $db_pwd;
 ?>

那不会让他们完全访问我的东西吗…那么取消设置在PHP代码末尾敏感的变量是一种好习惯吗?还是我缺少什么?

编辑以澄清…

在上述情况下…他们将使用自己的PHP服务器(而非我的PHP服务器),并使用include from PHP文件从我的服务器获取信息.

解决方法:

如果有人尝试通过allow_url_fopen对脚本执行远程包含,请从服务器的角度记住这是常规HTTP请求.然后,正确配置的服务器将执行PHP代码,而不是将其作为源发送下来.因此,假设您的数据库配置文件未产生任何输出,他们将收到的内容将是空白文档.他们将看不到或无法访问您的变量.

结果与将Web浏览器指向http://www.mywebsite.com/dbpwd.PHP相同.您会看到一个空白页.

如前所述,这取决于您的Web服务器是否已正确配置为执行PHP代码(否则,如果您的代码在请求时运行,应该是这样).但是,始终建议将敏感文件放置在服务器文档根目录之外,以免在服务器配置错误时避免此问题.

要回答问题的另一部分,您无需取消设置任何变量. PHP将在不再需要它们时对其进行清理,并且它们不会对您的安全造成威胁.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...