我有几个虚拟主机,在 Ubuntu 16.04 服务器上升级了许多软件包后,除 1 个之外,其余都运行良好。工作和非工作虚拟主机之间的唯一区别是,非工作虚拟主机根目录是另一个工作虚拟主机的子目录,而不是根目录的直接子目录。工作虚拟主机也没有目录指令,但即使没有它,非工作虚拟主机仍然只是这样。
我已经尝试/检查过:
- 根目录和所有子目录均拥有 www-data:www-data 所有权。
- 所有子目录至少具有读取和执行权限。
- 尝试使用 chmod 777 创建 index.html。
- 已重启服务器。
Apache 日志仅显示每次尝试访问文件时出现的错误。
AH01630: client denied by server configuration: [dir_name_here]
Vhost文件:
<VirtualHost *:443>
ServerAdmin **********@gmail.com
DocumentRoot /var/www/owncloud/data/***/files/***
<Directory "/var/www/owncloud/data/***/files/***/images">
Options +Indexes
AllowOverride all
Order allow,deny
Allow from all
Require all granted
</Directory>
ServerName ***.***.com
ServerAlias www.***.***.com
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [END,NE,R=301]
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/***.***.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/***.***.com/privkey.pem
</VirtualHost>
这可能是什么原因造成的?我还能做什么来排除故障?
答案1
代替
Order allow,deny
Allow from all
和
Require all granted
在 apache 2.4 中,上面的几行已被弃用并替换为以下内容,如果你在更新 apache 后需要任何帮助,本文档包含差异文档