> при помощи функции opendir и похожие с ней
> можно покинуть свой документрут, и прочитать содержимое каталога /home/* и даже
> /*
> Как это ограничить, что-бы каждый сайт мог выполнять эти функции в пределах
> своего каталога.купите книжку по юникс и прочитайте про разделение прав доступа пользователей.
Читать список каталогов в /home/ и даже в / - это почти нормально.
Ненормально - читать каталоги /home/otheruser/ да и то, если на них права не выше 770 если группы пользователей разные или не выше 700 если группы одинаковы (об этом тоже можно получить понимание, если почитать книжки и подумать).
Поскольку у вас скорее всего apache+mod_php, в котором таки да, можно читать каталоги других пользователей, то вы можете:
1) Запустить 5 апачей с mod_php, каждый от своего пользователя, + nginx перед ними
2) отказаться от mod_php, использовать apache+suexec
3) отказаться от mod_php, использовать php-fpm инстансы.
4) нанять вменяемого админа.