Я столкнулся с той же проблемой, после нескольких часов попыток я нашел решение, которое точно решает проблему:
https://wiki.apache.org/httpd/13PermissionDenied
В принципе, сервер Apache не только требует разрешения на чтение всех файлов, которые он обслуживает, но и разрешения на выполнение всех каталогов на пути вашего виртуального хоста.
Утилита namei может использоваться для поиска проблем с разрешениями перечисляя разрешения по каждому компоненту пути:
namei -m /usr/local/apache2/htdocs/foo/bar.html
В моем случае каталог на моем пути имеет разрешение 700, это вызывает проблему. После изменения на 701 проблема была решена.