403禁止访问

昨天我的主pipe把他的一个目录挂到了我的服务器上。 问题是,我无法访问他们,我现在无法与他联系。 当我input的URL我得到这个错误:

Forbidden You don't have permission to access /~<username>/core/ on this server. 

我试图进入“核心”目录,并执行以下操作:

 chmod -R 755 *.* 

但即使所有的权限改变,我仍然无法访问! 奇怪的是,我可以访问和编辑文件。

Apache需要访问文件系统path中的每个目录到/~<username>/core/

这几乎总是/home的权限问题。

chmod 755 /home/应该为你修复它。

或者Justin谈到的SELinux问题。

如果您使用的是SELinux(默认情况下是),那么您需要允许Apache访问用户主目录:

 setsebool -P httpd_enable_homedirs on 

就这样。

请注意,*。*在unix中的含义与ms-dos和windows中的不同。 文件名“扩展名”在unix中并不重要,就像它们在DOS中一样,它们只是组成文件名的string的一部分。

chmod -R 755 *.*仅改变文件和目录的权限。 在他们的名字。 要改变所有文件,不pipe它们是否有。 或不,请尝试:

chmod -R 755 *

更好的是,只有目录(不是纯文件)需要可执行文件,所以请尝试如下所示:

chmod -R a+rX,u+w *

这将所有文件的所有文件更改为所有用户可读,可由所有者写入,并将目录上的执行位(“X”而不是“x”)设置为。

你在服务器上使用SELinux吗? 如果你是,并且它被设置为“Enforcing”,你可能需要将目录的上下文更新到httpd_sys_content_t ,否则Apache将被拒绝访问。

您可以通过执行以下操作更改目录的上下文:

chcon -Rv --type=httpd_sys_content_t /~<username>/core

这将改变目录的上下文,并将其内容改变为适合HTTPD服务(即,Apache)工作的上下文。

更多信息可以在这里find: http : //wiki.centos.org/HowTos/SELinux/