Apache, это программа, работающая в фоновом режиме. Apache изначально запускается пользователем root(также называется root-process). Это root-processзапускает несколько дочерних процессов, которые обрабатывают клиентские запросы. По соображениям безопасности дочерние процессы запускаются не пользователем, rootа пользователем с минимальными правами. Обычно этот пользователь называется apacheили www-data.
Чтобы узнать, что это за пользователь Apache v1:
ps -ef | grep httpd | grep -v grep
или для apache v2:
ps -ef | grep apache | grep -v grep
Результат для apache 2 будет примерно таким:
root 5001 1 0 07:21? 00:00:00 / usr / sbin / apache2 -k start
www-data 5021 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k start
www-data 5022 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k start
www-data 5023 5001 0 07:21? 00:00:00 / usr / sbin / apache2 -k start
В этом случае пользователь / группа www-data
Таким образом, чтобы сделать каталог доступным для записи веб-сервером, мы должны установить владельца или группу каталога на владельца или группу Apache и включить для него разрешение на запись. Обычно мы устанавливаем каталог как принадлежащий группе Apache ( apacheили `www-data или любой другой пользователь, используемый для запуска дочерних процессов) и включаем разрешение на запись для группы.
chgrp www-data /path/to/mydir
chmod g+w /path/to/mydir
( www-dataэто имя, которое вы нашли с помощью psкоманды выше).
Что касается:
2) Мне также сказали сделать каталог app / runtime доступным для веб-записи. Это так же, как Apache для записи?
Да, это каталог, который вам нужно установить для записи для группы, которую ожидает Apache. Вероятно, это будет где-то в /var/www/или он установлен в качестве виртуального хоста в /etc/apache2/sites-enabled/и / или/etc/apache2/sites-available