Description
In the Magento 2 readme, Apache 2.4 is said to be compatible with Magento, but this is not in fact the case. The Order [...]
and Allow from [...]
and Deny from [...]
directives have been replaced by Require
directives in Apache 2.4, and the old directives are silently ignored. None of the 14 .htaccess
files in the Magento 2 repository that implement the 2.2 directives, implement the 2.4 directives.
This leaves folders you're trying to protect (e.g. app
, bin
, dev
, media/customer
, media/import
), open for the wide world to access on servers that run Apache 2.4, such as Debian 8 "Jessie", Ubuntu 14.04 LTS, and CentOS 7.
The problem is that the new directives cause 2.2 to error out, which means that to support both, you need to use <IfVersion>
directives, but those require an Apache module, and I don't think that this module is enabled by default.
In any case, I feel that the Magento team and Magento developers should be aware of this, so I thought I'd bring it to your attention.