Make sure in your httpd.conf you have:
<Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory>
This restricts the folder to readonly using the <Limit> and <LimitExcept>, you can remove these if you don't want it.
Make sure to restart apache when making changes to httpd.conf.
That is all I can think of at the moment as to why you can't read the directory. As long as read/execute exists in the permissions it should work.