php - 代码点火器上的权限被拒绝

标签 php linux apache codeigniter

我在装有 Debian 7 的 PC 上运行 Apache 服务器(好吧,实际上是 Crunchbang,但它们是同一回事)。

我正在使用 CodeIgniter 框架,它工作正常。我完成了第一个教程,您在其中创建了第一个静态页面(本教程:http://ellislab.com/codeigniter/user-guide/tutorial/static_pages.html),并且效果很好。

但是,正如您在第一步看到的那样,有一行是这样的:

[...]
public function view($page = 'home')
[...]

我将该行更改为“$page = 'about'”,以尝试显示其他页面。就在那时, hell 打开了大门并释放了 Kraken。

然后它开始显示404错误,所以我又改回设置,但错误一直出现。我重新启动了 Apache,重新启动了我的 PC(我不知道,有时它可以工作),最后,从我的/var/www/目录中删除了 codeigniter 文件,然后再次复制它们。

现在错误不一样了:它什么都不显示!空白页,仅此而已。这是我的 apache 错误日志所说的:

[Fri Feb 21 23:03:11 2014] [error] [client 127.0.0.1] PHP Warning:  require_once(/var/www/system/core/CodeIgniter.php): failed to open stream: Permission denied in /var/www/index.php on line 202
[Fri Feb 21 23:03:11 2014] [error] [client 127.0.0.1] PHP Fatal error:  require_once(): Failed opening required '/var/www/system/core/CodeIgniter.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/index.php on line 202

最佳答案

听起来您的服务器上的权限设置不正确。

检查 Apache 在哪个组中运行(我认为默认情况下 Debian 使用 www-data),并确保设置组所有者和读取权限。

# chown www-data:www-data -R /var/www
# chmod g+r -R /var/www

如果上述方法不起作用,请尝试将权限设置为 777,看看问题是否出在其他地方。不过,我无法想象还有什么会导致该错误。

关于php - 代码点火器上的权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21950148/

相关文章:

c++ - SIG_IGN 无法忽略 SIGINT 信号

php - 如何设置批处理文件来获取txt文件并将一些数据放入mySQL数据库中

apache - .htaccess 将 https 重定向到 http 不起作用

php - 在 PHP 中使用 if 语句的备用查询

php - 表单收集错误

javascript - 多次填写同一表单字段的内容并将其写入数据库的多行中

php - MYSQL - 如果计数超过 1,则获取平均值

linux - 发送ARP表的shell脚本

c++ - posix信号 react 时间

java - 'ZipException : invalid code lengths set' when streaming input file to Apache-POI