为文件夹中的文件授予PHP root权限

时间:2014-03-12 22:52:22

标签: php mysql cpanel

我是一个php新手,对事物有所了解,但对基本安全概念或服务器管理知之甚少。我最近被黑了(假设从mysql注入),我的文件都被删除了。在尝试恢复运行并尝试正确保护脚本之后,我遇到了这个问题:

建议我将所有数据库连接用户名/密码等放在一个单独的.inc文件中,放在一个单独的文件夹中(不幸的是,我需要在根目录下的一个文件夹中)。我做得很好,但也建议我只对连接文件的文件夹授予600权限。

我的一个数据库连接文件如下所示:

$usersusername = "myusername goes here";
$userspassword = "64bit encrypted password goes here";
$usershostname = "localhost";
$usersdbname = "my database goes here";

我的index.php中包含的内容如下所示:

include_once '/dbauth/myloginscript.inc';

我正在产生错误:

Warning: include_once(/home/mycpaneluser/public_html/dbauth/myloginscript.inc): failed to open stream: Permission denied in /home/mycpaneluser/public_html/index.php on line 60

Warning: include_once(): Failed opening '/home/mycpaneluser/public_html/dbauth/myloginscript.inc' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/myloginscript/public_html/index.php on line 60

我被告知我需要在http.conf中包含允许权限以某种方式,但在我做到这一点之前,我是否遵循正确的程序来保护我的数据库登录信息,或者我错过了标记?任何帮助,将不胜感激。

2 个答案:

答案 0 :(得分:0)

确保$cfg['Servers'][$i]['user'] = 'yourUsername';中的$cfg['Servers'][$i]['password'] = 'yourPassword';serverFolder/phpMyAdmin/config.inc.php

答案 1 :(得分:0)

  1. .php 附加到 myloginscript.inc (文件名和引用 它)并在文件的最开头添加PHP开始标记,以便它 将由PHP解析而不是显示为纯文本。只是 如果直接在浏览器可访问目录中调用,则为最坏情况。
  2. 我假设" root"文件夹实际上是您的ftp主目录,在大多数虚拟主机环境中,默认情况下,该目录是从您的vhost文档根目录升级的。如果您将inc文件放在那里,引用将是include_once '../myloginscript.inc.php'; 检查您的网站托管结构和$ _SERVER [' DOCUMENT_ROOT'] var,了解正确的包含路径。