Я пытаюсь запустить скрипт загрузки php test и задаюсь вопросом, какая команда должна будет загружать файлы на сервере ubuntu в каталоге var / www / image
cd /var/www/image
Для файла, подобного изображению, вам не требуется разрешение на выполнение:
sudo chmod 664 *
Если у вас есть каталоги внутри изображения, и вы хотите применить разрешение:
sudo find . -type d -exec chmod 755 "{}" \;
Это будет рекурсивно искать в вашем каталоге и chmod 755 только все каталоги.
Аналогично, следующее будет chmod только для всех файлов (и игнорировать каталоги):
sudo find . -type f -exec chmod 644 "{}" \;
Имя файла с пробелом (спасибо Nicklas B)
find . -type f -print0 | xargs -0 chmod 644
Какое имя пользователя будет загружать файлы? Обычно на Ubuntu имя пользователя веб-сервера Apache является www-данными . Вы можете проверить это, найдя процесс веб-сервера в команде списка процессов и посмотреть, какое имя пользователя, в котором оно работает.
ps aux | grep apache
ps aux | grep apache
или ps aux | grep httpd
ps aux | grep httpd
должен дать вам этот ответ.
Тогда вы, как правило, захотите сделать это имя пользователя Apache владельцем каталога и всех файлов и каталогов внутри него:
cd /var/www/image # recursively (all subdirs & files) set owner to www-data for current directory chown -R www-data .
Обычно это должно быть достаточно, но если по какой-то причине каталог, файлы или подкаталоги не имеют права на запись для имени пользователя владельца, это легко устранить, изменив разрешения для добавления этого доступа на запись, например:
cd /var/www/image # recursively add "w"rite permissions for the "u"ser (owner) to current directory chmod -R u+w .
cd /var/www
sudo chmod 775 image
Вам будет предложено ввести пароль администратора – сделайте это и нажмите [return].
Изменить группу редактирования на www-data
chown -R (владелец): www-data (папка)
И разрешение папки на 775
Изменить группу редактирования может решить большинство проблем с разрешениями.
Изменение WWW-данных и разрешение 775.