
Todavía estoy aprendiendo, así que tengan paciencia conmigo.
Instalé Apache, php y mysql y tengo algunos vhosts en ejecución, usé certbot para proteger los dominios y todo está bien. Puedo acceder al dominio, ejecutar scripts, etc.
También tengo una matriz RAID 1 interna que está formateada en ext4 y montada /media/mcp/Vault
usando la siguiente entrada en fstab:
/dev/disk/by-uuid/e80c874e-b7cf-4cd0-ab00-1b1a43b88516 /media/mcp/Vault auto nosuid,nodev,nofail,x-gvfs-show 0 0
El script en cuestión reside /var/www/domain.com/testwrite.php
y no contiene nada más que el siguiente código:
<?php
$dir = '/media/mcp/Vault';
$files = scandir($dir);
print_r($files);
/media/
es propiedad deroot:root
y tiene permisos de0755
./media/mcp/
es propiedadroot:root
y tiene permisos de0750
/media/mcp/Vault/
es propiedadwww-data:www-data
y tiene permisos de0777
Sin embargo, cuando ejecuto ese script, aparece el siguiente error:
Warning: scandir(/media/mcp/Vault): failed to open dir: Permission denied in /var/www/domain.com/testwrite.php on line 8
Warning: scandir(): (errno 13): Permission denied in /var/www/domain.com/testwrite.php on line 8
La línea 8 es, $files = scandir($dir);
por supuesto.
Editar:
Agregué lo siguiente /etc/apache/apache.conf
según la pregunta vinculada:
<Directory /media/mcp/Vault/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
... y reinicié apache, pero no hubo cambios; Sigo recibiendo los mismos errores.
Luego cambié /mcp/
a 0755 y, creo, la combinación de esos dos cambios resolvió mi problema.
Respuesta1
Intente cambiar el código en el directorio. Se verá así
<Directory /media/mcp/Vault/> Options -Indexes AllowOverride All Require all granted </Directory>
Espero que funcione.