O Apache não pode acessar a unidade montada mesmo com as permissões adequadas

O Apache não pode acessar a unidade montada mesmo com as permissões adequadas

Ainda estou aprendendo, então, por favor, tenha paciência comigo.

Instalei Apache, php e mysql e tenho alguns vhosts rodando, usei o certbot para proteger os domínios e está tudo bem aí. Posso acessar o domínio, executar scripts, etc.

Eu também tenho uma matriz RAID 1 interna formatada para ext4 e montada /media/mcp/Vaultusando a seguinte entrada no fstab:

/dev/disk/by-uuid/e80c874e-b7cf-4cd0-ab00-1b1a43b88516 /media/mcp/Vault auto nosuid,nodev,nofail,x-gvfs-show 0 0

O script em questão reside /var/www/domain.com/testwrite.phpe contém nada além do seguinte código:

<?php

$dir    = '/media/mcp/Vault';
$files  = scandir($dir);

print_r($files);
  • /media/pertence root:roote tem permissões de 0755.
  • /media/mcp/é de propriedade root:roote tem permissões de0750
  • /media/mcp/Vault/é de propriedade www-data:www-datae tem permissões de0777

No entanto, quando executo esse script, recebo o seguinte erro:

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

A linha 8 é $files = scandir($dir);claro.


Editar:

Eu adicionei o seguinte de /etc/apache/apache.confacordo com a pergunta vinculada:

<Directory /media/mcp/Vault/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

... e reiniciei o apache, mas não houve alteração; Ainda recebo os mesmos erros.

Então mudei /mcp/para 0755 e - eu acho - a combinação dessas duas alterações resolveu meu problema.

Responder1

Tente alterar o código no diretório. Será parecido com

<Directory /media/mcp/Vault/> Options -Indexes AllowOverride All Require all granted </Directory>

Espero que funcione.

informação relacionada