Apache给403禁止
我最近不得不重新安装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的文件夹中的项目?
显然只是chmod
项目所在的目录是不够的。我不得不树中的所有更高的目录。
所以,即使我的VHOST指出/home/powerbuoy/Dropbox/Projects/AProject/
简单chmod
荷兰国际集团/AProject/
是不够的,但它有许多工作要做全部来自/home/powerbuoy/
看起来是那样的。
您必须chmod上传目录树的权限的原因是Linux不允许您直接访问文件夹,如/home/jsmith/my_folder
。您还必须具有执行权限/
/home/
和/home/jsmith
。执行位允许受影响的用户进入目录,并访问其中的文件和目录。
感谢您的解释。因为我没有chmod/home /我认为那已经可用了吗? – powerbuoy 2013-03-15 16:27:42
我相信你是对的。/home通常默认有755个,但是,您需要确保为powerbuoy/Dropbox/Projects /以及之后的版本配置了+ x。也许,做一个chmod -R ugo + x powerbuoy(这将递归地向树中添加这些权限) – 2013-03-15 16:51:51
很可能这是一个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部分为“你的真实路径”。
'chmod 755 $(find/home/user/public_html -type d)' 对我来说工作正常。 谢谢 – 2018-02-14 11:20:45
chown to www-data?或者你的apache进程运行的任何名称。 – Tschallacka 2013-03-15 15:58:31
好吧,但不会'chmod 777'允许_anything_访问所有内容? – powerbuoy 2013-03-15 15:59:12
它会在理论上,但有时这还不够。 这可能是因为用户权限等dropbox不允许它 – Tschallacka 2013-03-15 15:59:52