Запуск Ubuntu 18.04, Apache / 2.4.29, PHP 7.2.10.
Я не могу читать / писать на мои подключенные диски из PHP.
это мой пример кода:
<?php
ini_set('display_errors', '1');
error_reporting(E_ALL);
$folder = '/media/superuser/HDD4TB_CRYPT/nextcloud_data';
var_dump(ini_get('open_basedir'));
file_put_contents($folder.'/x.txt', "AA");
echo file_get_contents($folder."/x.txt");
phpinfo();
Это вывод:
string (0) ""
Предупреждение: file_put_contents (/media/superuser/HDD4TB_CRYPT/nextcloud_data/x.txt): не удалось открыть поток: отказано в разрешении в /var/www/html/nextcloud/x.php в строке 9
Предупреждение: file_get_contents (/media/superuser/HDD4TB_CRYPT/nextcloud_data/x.txt): не удалосьоткрыть поток: Отказано в доступе в /var/www/html/nextcloud/x.php в строке 10
это данные папки:
superuser@SuperTower:/var/www/html/nextcloud$ ls -al /media/superuser/HDD4TB_CRYPT/
total 28
drwx------ 4 superuser superuser 4096 feb 3 20:55 .
drwxr-x---+ 4 root root 4096 feb 2 00:06 ..
drwx------ 2 root root 16384 feb 1 22:49 lost+found
drwxrwxrwx 2 www-data www-data 4096 feb 3 21:29 nextcloud_data
Я пытался редактировать open_basedir,но это не помогло решить какие-либо проблемы, поэтому я просто прокомментировал это.Следовательно, open_basedir
имеет no value
в phpinfo()
.Папка преобразуется в www-данные (это пользователь apache), а также chmoded в 777.
/media/superuser/
содержит папки с подключенными дисками на моем ПК.superuser
- мое имя пользователя в Ubuntu.
Спасибо за любые идеи!
PS
Я также попытался добавить символическую ссылку в свою папку:
superuser@SuperTower:/var/www/html/nextcloud$ ls -al data
lrwxrwxrwx 1 www-data www-data 45 feb 3 21:05 data -> /media/superuser/HDD4TB_CRYPT/nextcloud_data/
и с использованием
$folder = '/var/www/html/nextcloud/data';
, но результаты точно такие же.
Я также попытался добавить
<Directory /var/www/html/nextcloud/data>
Options +FollowSymLinks
Allow from All
</Directory>
без изменений в получающемся поведении: /