我已经从 apache 2.2.22 切换到 apache 2.4.10,突然间我用来访问某些日志的别名不再起作用。
这是我的配置文件:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName mdvns-sequencer
DocumentRoot /var/www/
<Directory /var/log/mdvns/>
Order allow,deny
Allow from all
Options +Indexes
</Directory>
Alias /logs/ /var/log/mdvns/
<Directory /var/www>
AddHandler cgi-script .py
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
当我尝试访问 /logs/(我设置的别名)时,出现 403 禁止访问错误。error.log 包含以下消息:
[Sat Jan 01 00:38:25.348732 2000] [authz_core:error] [pid 1256:tid 3053450288] [client 192.168.2.135:64882] AH01630: client denied by server configuration: /var/log/mdvns/
我已经把一切都说完了维基百科,但就是找不到解决方案。目录和其中的文件对所有者/组/其他人具有读取权限。目录肯定存在并且已更正。
我应该注意,如果我尝试访问 /logs/ 目录中的文件,我会收到同样的错误。
有任何想法吗?
答案1
权限选项在 2.4 中有所更改。更多信息2.4 升级文档
代替
<Directory /var/log/mdvns/>
Order allow,deny
Allow from all
Options +Indexes
</Directory>
尝试
<Directory /var/log/mdvns/>
Options +Indexes
AllowOverride All
Require all granted
</Directory>
/var/www 目录也一样