2013-03-15 181 views
0

我最近不得不重新安装Ubuntu和其他一切,因为我的SSD崩溃。Apache给403禁止

我已经设置了Apache/MySQL/PHP并且可以访问本地主机/没有问题。运行PHP和MySQL也很好。

我将我的项目放在位于/home/powerbuoy/Dropbox/Projects/的Dropbox文件夹(自崩溃以来),并且已经建立了VHOST,指向那里的一些项目。我还设置了/etc/hosts,以便我可以通过http://project-name.dev访问我的项目。

但是,当我尝试访问http://any-project.dev时,我得到的全部是403 forbidden。我运行了chmod -R 777 Projects/,终端中的所有文件和文件夹都变成了绿色。这没有帮助。

我检查了错误日志和他们说:

[crit] [client 127.0.0.1] (13)Permission denied: /home/powerbuoy/Dropbox/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable 

但甚至不应该是一个.htaccess文件的任何地方出现。

我甚至设置了一个完全空的项目(/home/powerbuoy/Dropbox/Projects/test/index.php,里面只有<?php phpinfo()),设置了一个VHOST和一个http://test.dev的URL。我在这里得到同样的错误。

任何想法?

感谢

编辑:我试着移动我的测试项目到桌面(/home/powerbuoy/Desktop/test/),现在它的工作原理:P

也许它是与位于Dropbox的文件夹中的项目?

+0

chown to www-data?或者你的apache进程运行的任何名称。 – Tschallacka 2013-03-15 15:58:31

+0

好吧,但不会'chmod 777'允许_anything_访问所有内容? – powerbuoy 2013-03-15 15:59:12

+0

它会在理论上,但有时这还不够。 这可能是因为用户权限等dropbox不允许它 – Tschallacka 2013-03-15 15:59:52

回答

2

显然只是chmod项目所在的目录是不够的。我不得不树中的所有更高的目录。

所以,即使我的VHOST指出/home/powerbuoy/Dropbox/Projects/AProject/简单chmod荷兰国际集团/AProject/是不够的,但它有许多工作要做全部来自/home/powerbuoy/看起来是那样的。

1

您必须chmod上传目录树的权限的原因是Linux不允许您直接访问文件夹,如/home/jsmith/my_folder。您还必须具有执行权限//home//home/jsmith。执行位允许受影响的用户进入目录,并访问其中的文件和目录。

+0

感谢您的解释。因为我没有chmod/home /我认为那已经可用了吗? – powerbuoy 2013-03-15 16:27:42

+1

我相信你是对的。/home通常默认有755个,但是,您需要确保为powerbuoy/Dropbox/Projects /以及之后的版本配置了+ x。也许,做一个chmod -R ugo + x powerbuoy(这将递归地向树中添加这些权限) – 2013-03-15 16:51:51

7

很可能这是一个chmod问题。您必须更改所有树chmod设置。如果您有SSH访问,你可以试试这个命令:

chmod 755 $(find /home/user/public_html -type d) 
chmod 644 $(find /home/user/public_html -type f) 

请更换/ home/user中/的public_html部分为“你的真实路径”。

+0

'chmod 755 $(find/home/user/public_html -type d)' 对我来说工作正常。 谢谢 – 2018-02-14 11:20:45