[解决方案] 删除 /var/www/ 中的 .htaccess 文件。
Apache2、php5、Ubuntu-重新启动,没有防火墙,但服务器不工作。访问http://IP/dir/index.html点亮“禁止”消息。为什么我会收到错误消息?
权限
-rwxr-xr-x 1 root www 8643 2009-08-22 22:30 style.css
drwxr-sr-x 3 root www 4096 2009-08-22 22:30 views
错误日志
[Sun Aug 23 06:50:27 2009] [error] [client 212.246.212.212] client denied by server configuration: /var/www/codes/index.html
[Sun Aug 23 06:50:31 2009] [error] [client 212.246.212.212] client denied by server configuration: /var/www/index.html
错误
$ sudo service apache2 start
* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
...done.
答案1
默认配置/etc/apache2/sites-enabled/000-default
应该包含类似
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
如果没有相关设置,<directory>
apache 将无法提供目录中的文件。请检查您是否更改了此项,如果已更改,请将更改的内容发布到 中000-default
。
答案2
这里的信息确实不够 —— 配置文件是什么?“dir”目录中有什么,等等,但值得注意的是,如果 apache 用户(在本例中我们假设为“www”)能够找到它,则需要对该目录上方的所有目录具有目录读取权限,直至有效根目录。
答案3
尝试检查你的 Apache error.log
。
答案4
您需要为 http 根目录设置允许/拒绝指令
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>