
Ich lerne noch, also haben Sie bitte Geduld mit mir.
Ich habe Apache, PHP und MySQL installiert und einige virtuelle Hosts laufen, habe Certbot verwendet, um die Domänen zu sichern, und alles ist in Ordnung. Ich kann auf die Domäne zugreifen, Skripte ausführen usw.
/media/mcp/Vault
Ich habe außerdem ein internes RAID 1-Array, das auf ext4 formatiert ist und mithilfe des folgenden Eintrags in der fstab-Datei gemountet wird :
/dev/disk/by-uuid/e80c874e-b7cf-4cd0-ab00-1b1a43b88516 /media/mcp/Vault auto nosuid,nodev,nofail,x-gvfs-show 0 0
Das betreffende Skript befindet sich in /var/www/domain.com/testwrite.php
und enthält nichts weiter als den folgenden Code:
<?php
$dir = '/media/mcp/Vault';
$files = scandir($dir);
print_r($files);
/media/
ist Eigentum vonroot:root
und verfügt über die Berechtigungen von0755
./media/mcp/
ist im Besitz vonroot:root
und verfügt über die Berechtigungen von0750
/media/mcp/Vault/
ist im Besitz vonwww-data:www-data
und verfügt über die Berechtigungen von0777
Wenn ich das Skript ausführe, erhalte ich jedoch die folgende Fehlermeldung:
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
Zeile 8 ist $files = scandir($dir);
natürlich.
Bearbeiten:
Ich habe der /etc/apache/apache.conf
verlinkten Frage Folgendes hinzugefügt:
<Directory /media/mcp/Vault/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
... und Apache neu gestartet, aber es gab keine Änderung; ich bekomme immer noch die gleichen Fehler.
Dann habe ich /mcp/
auf 0755 gewechselt und - ich glaube - die Kombination dieser beiden Änderungen hat mein Problem gelöst.
Antwort1
Versuchen Sie, den Code im Verzeichnis zu ändern. Er sieht folgendermaßen aus
<Directory /media/mcp/Vault/> Options -Indexes AllowOverride All Require all granted </Directory>
Hoffe, es funktioniert.