Если мы проверим право собственности на site1, мы найдем что-то вроде этого,
ls -ld /var/www/site1/drwxr-xr-x 2 root root 4096 Oct 24 21:06 site1/
Это означает, что каталог принадлежит корню пользователя, корню группы. В то время как корень пользователя имеет разрешение на запись (плюс права на чтение и выполнение) в каталог, корень группы имеет только права на чтение и выполнение.
Мы захотим сменить владельца группы на другого (новый) сгруппируйте и добавьте пользователя 1 в эту конкретную группу. Мы также дадим разрешение на запись этой конкретной группе.
Создайте новую группу,
sudo addgroup site1
Добавьте пользователя 1 во вновь созданную группу,
sudo adduser user1 site1
Убедитесь, что пользователь1 действительно находится в этой группе,
groups user1
Результатом должен быть список, что-то вроде,
user1 : <other-groups> site1
Теперь мы можем изменить групповое право собственности на ваш предполагаемый каталог.
sudo chown -vR :site1 /var/www/site1/changed ownership of `/var/www/site1/' from root:root to :site1
Предоставьте разрешение на запись этому новому владельцу группы,
sudo chmod -vR g+w /var/www/site1/mode of `/var/www/site1/' changed from 0755 (rwxr-xr-x) to 0775 (rwxrwxr-x)
Убедитесь, что все изменения действительно есть,
ls -ld /var/www/site1/drwxrwxr-x 2 root site1 4096 Oct 24 21:06 /var/www/site1/
Итак, каталог теперь принадлежит пользователю root, группе site1. Как пользователь root, так и группа site1 имеют разрешение на запись (плюс разрешения на чтение и выполнение) в каталог. Любой пользователь, принадлежащий к группе site1, будет пользоваться всеми привилегиями, предоставленными этой группе.
Теперь войдите в систему как пользователь1, перейдите в каталог site1 и попробуйте создать файл в этом каталоге,
echo "My User1 Site" > index.html bash: index.html: Permission denied
Это не удалось, так как, скорее всего, основная группа user1 не является site1. Итак, переходите в эту группу.
newgrp - site1
Попробуйте воссоздать файл заново (помните, что вы были перемещены в домашний каталог пользователя 1 после смены группы), теперь это должно сработать.Поскольку созданные файлы будут иметь разрешение на чтение по всему миру, apache (или ваш веб-сервер) не должны столкнуться с какими-либо проблемами при доступе к ним.
РЕДАКТИРОВАТЬ
Кроме того, как указал dan08 в комментарии вам нужно добавить www-данные в группу site1.
sudo adduser www-data site1
Во многих (не во всех) дистрибутивах www-data является пользователем, под которым работает веб-сервер Apache. Это также означает, что все, что делается Apache (особенно включая PHP-скрипты), будет выполняться с разрешениями пользователя www-data (а также группы www-data) по умолчанию. WordPress использует пользовательские www-данные для записи файлов.
Если вы хотите посмотреть, как работает веб-сервер apache, выполните команду,
ps aux | grep apache2 | less