最近有一个重大问题,在我的网络托管公司搞砸了,我所有的PHP文件中以明文显示。 这是一个重大问题,对我来说显而易见的原因。 主要是因为MySQL数据库的细节被曝光。
我现在想改变在我的PHP文件获取数据库的登录信息,这样即使托管公司失败,我这永远不会再发生的方式。
我的当前设置如下:
include 'info.php';
class Login {
var $host;
var $username;
var $password;
var $db;
var $url;
该info.php的里面是数据库的用户名,密码等。 我希望把它使得info.php的文件不能被看作只有我.php文件能够以获取登录信息来源访问info.php的。
我该如何设置呢? 这是一个有点棘手的一个对我解释那么请不要苛刻和-1我不好描述..只是问,我会清理在我描述的任何空隙。
只要把info.php
你的根目录之外。 通过这种方式,可以包括,但应您的网络托管F *#$起来,没有人可以查看该文件,甚至以纯文本格式。
然后,将包括这样的:
include('../info.php');
这样一来,即使有人发现了,你有一个名为info.php
,存储所有的密码,他们不能将其浏览器指向该文件。
以上将是理想和最防水的解决方案。 但是,如果这是不可能的,因为权限,另一选择是将所有敏感文件的目录,并使用块到该目录中直接访问.htaccess
文件。
在目录要封锁访问,放置.htaccess
文件,其内容如下:
deny from all
如果由于某种原因xbonez的答案不工作(可以说一个没有访问到非DOCUMENT_ROOT文件夹)。您可以通过使用的.htaccess实现同样的事情
<files info.php>
order allow,deny
deny from all
</files>
这在理论上应(非测试)保护文件,在浏览器中使用但不能从包括所述文件块的PHP。
创建重定向到文件的例子“requests.php”,并就其开关你requests.If你的数据是正确的重定向到特定的页面,如果不这样做same.On开关年底建成anoter重定向形式。随着这样用户不能看到page.Don't把therer HTML或东西 - 只是逻辑。