查看文章 |
Apache2安装后出现403 Forbidden 的原因http://www.toplee.com/blog/93.html最 新的apache2.2提供和不少新模块的支持,也在性能和安全上有改进,也就造成一些新的机制和概念需要我们不断去摸索和熟悉,前一阵就遇到了安装好 apache2并配置好httpd.conf后,无论访问什么路径都出现 403 forbidden的提示,折腾了半天才从官方的maillist文档里面找到答案。 出现这样的问题一般有两种可能性。 一种可能性是DocumentRoot选项的设置,如果在安装好apache2后修改了该选项,并且忘记了配置该新目录的访问权限就会出现这样的情况。比如apache2安装好后默认的参数如下 DocumentRoot /usr/local/www/data
<directory "/usr/local/www/data"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </directory> 我们常常会重新指定web文件存放的目录,比如设定 另外一种可能性出现在我们配置了不同的VirtualHost,并且有某个VirtualHost的DocumentRoot不在全局的 DocumentRoot目录下,这时必须在全局种单独增加对该目录的Directory 项进行设置,否则该VirtualHost下的所有访问均会出现403 forbidden错误。 这个问题是因为Apache2对于权限和安全的更高要求,对分布在不同磁盘上的目录文件进行严格管理,我们进行web规划的时候必须注意这一点。
升级apache和glibc这两天把Apache升级到了2.0.58-r2, glibc-2.4-r3, 遇到了一点麻烦。 升级Apache本是很简单的事,可这回顺便把配置文件httpd.conf也升级了,改用Gentoo定制的httpd.conf, 导致所有站点无法访问,access denied。在httpd.conf中添加如下行: 升级完glibc-2.4-r3后,blog站点不能被访问。log中显示加载模块blogxp.publisher时出错: Linux下的好多软件是相互依赖的,比如mod_python要依赖于Apache和Python等,当升级了底层软件,上层软件很可能需要重新编译,否则可能出现不兼容问题。 davies 发表于 2006 年 09 月 4 日 | |