Получение php для копирования папки в корневой каталог пользователя

Я использую Нано Пи Нео с помощью Ubuntu 16.04 (Гостеприимный) рабочий Apache. Я пытаюсь сделать обновление firware, в котором я загружаю zip-файл через веб-интерфейс. Сценарий PHP разархивировал файл, который обновляет корень Apache (/var/www) и копирует папку "сценарии" в корневой каталог пользовательского пи (/home/pi). Я дал владение "/home/pi/scripts" к www-данным, но это все еще дает мне следующую ошибку.

cp: cannot stat '/home/pi/scripts/test document.txt': Permission denied .

Мой пример кода здесь

 if(move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],"/var/www/".$target_dir.$target_file)){
            //echo "The file ". basename($_FILES["fileToUpload"]["name"])." has been uploaded.";
            $f=fopen('PASSWORD_DIR/password.txt','r');
            $line=fgets($f);
            fclose($f);
            $line=str_replace(array("\n","\r"),'',$line);
            exec("unzip -P ".$line." -o /var/www/uploads/ZIPPED_FILE.zip -d /var/www/uploads/",$output,$result);
            if($result==0){
            exec("cp -TRv /var/www/uploads/html/ /var/www/");
            exec("cp -TRv /var/www/uploads/scripts/ /home/pi/scripts");//THIS CAUSES AN ISSUE
            exec("cd /home/pi/scripts && make");
            exec("rm --interactive=never /var/www/uploads/ZIPPED_FILE.zip");
            exec("rm --interactive=never -r /var/www/uploads/html");
            exec("rm --interactive=never -r /var/www/uploads/scripts");
            echo("<script>alert('software has been installed')</script>");
            //echo("<script>window.history.go(-2)</script>");
            //$out=shell_exec("whoami");
            //echo $out;
            }
0
задан 28 June 2019 в 14:15

1 ответ

Чтобы ответить на мой собственный вопрос, решение состояло в том, чтобы дать разрешения на запись в сценарии каталога, используя

chmod g+rx /home/pi/scripts. Если это не сработает, вы можете создать ярлык ссылки на папку, используя

ln -s или создать и Alias ярлык в файле конфигурации вашего веб-сервера.

0
ответ дан 28 June 2019 в 14:15

Другие вопросы по тегам:

Похожие вопросы: