fopen(dbinfo.php):无法打开流:权限被拒绝Ubuntu 12.04 LTS

时间:2013-03-30 16:50:40

标签: ubuntu xampp permission-denied lampp

我正在尝试在UBuntu上运行一个php项目。它有一个安装脚本,用于创建mysql数据库。 当我尝试运行脚本时,我收到以下错误:

Warning: fopen(dbinfo.php): failed to open stream: Permission denied in /opt/lampp/htdocs/project/install.php on line 12

Warning: fwrite() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/project/install.php on line 19

Warning: fclose() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/project/install.php on line 20

Warning: include(dbinfo.php): failed to open stream: No such file or directory in /opt/lampp/htdocs/project/install.php on line 21

Warning: include(): Failed opening 'dbinfo.php' for inclusion (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/project/install.php on line 21

Notice: Undefined variable: host in /opt/lampp/htdocs/project/install.php on line 23

Notice: Undefined variable: user in /opt/lampp/htdocs/project/install.php on line 23

Notice: Undefined variable: password in /opt/lampp/htdocs/project/install.php on line 23

Notice: Undefined variable: database in /opt/lampp/htdocs/project/install.php on line 25

Notice: Undefined variable: database in /opt/lampp/htdocs/project/install.php on line 26
Error connecting to database.

我知道这些错误是由于权限拒绝。但我不知道如何解决这个问题。看起来这个脚本没有编辑或创建数据库的权限。我是Ubuntu的新手并且无法获得支持问题。抱怨英语不好。

1 个答案:

答案 0 :(得分:8)

我认为您的用户可能拥有/opt/lampp的权限,因此您可以编辑这些文件。但是,如果不是这种情况,您可以授予您的用户和apache组的访问权限。下一个显示用户,然后是组:

sudo chown -R youruser:www-data /opt/lampp

通过这种方式,您可以将所有权设置为用户,然后设置为组。之后,您必须为三个组授予访问权限:用户,组和其他人:

sudo chmod -R xxx /opt/lampp

注意:最右边是指文件所有者的权限,然后是群组和其他用户的权限。

现在,xxx是什么意思?

否 - 许可 - rwx

7 - 完整 - 111

6 - 读写 - 110

5 - 阅读并执行 - 101

4 - 只读 - 100

3 - 写入并执行 - 011

2 - 只写 - 010

1 - 仅执行 - 001

0 - none - 000

或者您可以使用:

chmod [reference][operator][mode] fileOrFolder

其中引用为:u(ser),g(roup),o(thers)和a(ll)。

运算符是:+(将指定的模式添加到指定的引用), - (删除)和=(指定的模式必须是指定引用的精确模式)

最后模式是:r(ead),w(rite),x(执行),[X(特殊执行),s和t(不常见)]。

希望这是你正在寻找的。