使用域名访问群晖服务器上的网站的时候,报告500错误(直接使用IP
地址访问的时候,不会报错),如下图:
1 2 |
# 查看错误日志 $ sudo tail -f /var/log/httpd/apache24-error_log |
查看apache 2.4
错误日志,发现如下错误日志:
1 |
2020-08-09T12:36:12+08:00 DS718 [Sun Aug 09 12:36:12.283126 2020] [core:alert] [pid 20436:tid 140261401286400] [client 10.10.10.116:40032] /volume1/web/xxx/.htaccess: Invalid command 'order', perhaps misspelled or defined by a module not included in the server configuration |
查看网站下面的.htaccess
,可以看到有如下配置:
1 2 3 4 5 |
# 禁止 readme.html 的访问,这个文件会暴露版本号信息 <Files readme.html> order deny,allow deny from all </Files> |
这个问题导致的原因是apache 2.4
默认已经不支持.htaccess
文件使用order
关键字来控制文件访问权限。
控制命令已经被替换成如下两个
一律允许访问
1 |
Require all granted |
一律禁止访问
1 |
Require all denied |
具体的说明参考 Upgrading to 2.4 from 2.2。
对于ubuntu
用户来说,可以通过启用mod_access_compat
模块来解决这个问题,如下:
1 2 3 |
$ sudo a2enmod mod_access_compat $ sudo service apache2 restart |
对于群晖来说,就只能手工修改配置文件了。