我的网站有登录页面。在这个页面的php脚本中,我有connection.inc,其中包含mysql连接数据。我知道这不安全,因为任何人都可以通过访问www.example.com/connection.inc来访问它。
我已将.htacess添加到
的根文件夹中<Files ~ "\.inc$">
Order allow,deny
Deny from all
Satisfy all
</Files>
在里面。
现在,当我访问www.example.com/connection.inc时,它现在出现错误403:禁止。
现在这是非常安全的吗?即现在没有人可以访问这些信息吗?
答案 0 :(得分:2)
如果您将扩展程序从.inc
更改为.php
,则风险会降低。如果他们从浏览器访问connection.php
文件,他们只会获得一个空白页面。
如果有人意外删除了.htaccess文件,或者由于某种原因它变为非活动状态,它将不再拒绝访问该文件。
另一方面,PHP可能会发生同样的情况。如果某人弄乱了服务器配置并且PHP引擎没有处理.php
文件,它们通常会以文本或八位字节/流的形式输出,并且将提供完整的源代码。
最重要的是,使用.htaccess方法可能是安全的,但如果可以,只需将扩展名更改为.php,然后就可以完全跳过.htaccess。您仍然可以像connection.php
一样包含.inc
。
此外,您的MySQL用户可能只允许从localhost连接到服务器。如果是这种情况,即使我知道您的用户名和密码,我也无法连接,因为我不是来自正确的主机。此外,MySQL可能没有在所有地址上监听连接,也可能只在localhost上监听,但这取决于它的设置方式。