Не удалось создать папку на / home / ec2-user / MyDir / на AWS

Я хотел создать папку в «/ home / ec2-user / MyDir / test» на AWs, но там говорится, что разрешение отклонено, хотя я дал достаточно прав доступа к каталогу.

<?php
$brideOrderFolder = '/home/ec2-user/MyDir/test';

if (!@mkdir($brideOrderFolder)) {
$error = error_get_last();
echo $error['message']; //Error: mkdir(): Permission denied
}
exit;
?>

Вот мое разрешение папки.

[ec2-user@ip-xx-xxx-xxx-xxx MyDir]$ ls -ld
drwxrwxrwx 5 ec2-user ec2-user 4096 Aug 23 14:24 .

Не могу ли я создать каталог в каталоге «/ home / ec2-user» в AWS?

3

Решение

Чтобы внести какие-либо изменения в любую папку или файл в Linux, приложение или пользователь должны находиться в этой группе.

Используйте ls -l для папки ec2-user и посмотрите, какой пользователь / группа имеет разрешения на запись этой папки, и я уверен, что www-data не имеет разрешения на чтение этой папки. Ec2-пользователь имеет право на свою папку по умолчанию.

Вы можете создать новую группу и изменить группу владельцев для этой папки.

Поочередно я предложу
Шаг 1: создайте папку под www / ec2-user-temp /
И теперь php может просто создавать папки под этой папкой.
Шаг 2: запланируйте команду копирования в crontab для рекурсивного копирования папки в ec2-пользователя. Crontab может выполнять его через определенные вами промежутки времени.

Или вы можете создать символическую ссылку для автоматической репликации файлов папок, как только они будут созданы в папке www. Вы можете узнать команды здесь

https://blog.bartbania.com/raspberry_pi/create-symbolic-links-in-linux/

В целях безопасности избегайте любых php или серверных приложений, чтобы вносить изменения в папки или файлы вне вашей webroot или www-папки.

Надеюсь, это поможет.

0

Другие решения

Измените владельца родительского каталога на пользователя «apache».

$ sudo chown apache: apache / var / www / html / PATHTOYOURDIR /

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector