public_html set permission at 755 is correct and how have by default

I created a site;
the default permission is 750 rwxr-x— but not work, so changed in 755 rwxr-xr-x and work
I found that is better 750 but work only if user is a nobody apache;

is so?

seeing that virtualmin by default set 750 and by default owner isn’t apache I suppose that also 750 work
for other users;
in my case no, why, perhaps I have some error in server configuration?

which set for have 755 by default?

With 755, users can access files of other users and not just their own. If you trust all the users on your server, that’s okay. But if you e.g. host stuff for potential strangers, it’s highly recommended not to do that.

750 should be okay, since the home directory is owned by a group with the same name as the user, and the Apache user (usually “www-data”) is added to that group. So the webserver should have read access to all home directories.

What problems exactly are you seeing?

ok I see better and work also with 750 settings; new I test with centos (not sure how ubuntu is)

but if I have example
home/site1 and site2

home is 755 with group root and user root

site1 is 750 with group site1 and user site1
site2 is 750 with group site2 and user site2

is correct so?

Yes, that’s correct. The /home directory must be 755, otherwise users wouldn’t have access to any directory in there (not even their own). In Linux, to be able to access a directory, you must have the proper rights on that directory, plus X access to all parent directories.

goto System Settings >> Server Templates >> Default Settings (or your setting) >> Edit template section: Apache Website >> Permissions on website subdirectory and change 0750 to 0755