0
我想要訪問一個目錄,其中包含位於我的虛擬服務器根目錄之外的mp3文件。在文檔根目錄之外訪問文件
我在虛擬主機上嘗試了許多不同的配置,但沒有運氣。我讀得越多,我看到的解決方案就越多。他們都沒有爲我工作。
這裏是最好的,我可以管理
DocumentRoot /var/www/www.dmdefd.com
ServerName www.dmdefd.767
<Directory "/var/www/www.dmdefd.com">
allow from all
Options Indexes FollowSymLinks MultiViews
Require all granted
</Directory>
alias /mp3music '/media/dmd/DUsers/music'
<Directory "/media/dmd/DUsers/music">
#Options Indexes MultiViews FollowSymLinks - no help
Options +Indexes
AllowOverride None
Order allow,deny
allow from all
</Directory>
我重新啓動Apache,然後我嘗試從PHP與
<?php
$root = $_SERVER["DOCUMENT_ROOT"];
$time = new Datetime();
echo $time->format ("H:i:s")."<br>";
echo $root."<br>";
echo realpath ("$root/mp3music")."<br>";
$biglist = scandir ("$root/mp3music/");
?>
訪問文件,結果是
Warning: scandir(/var/www/www.dmdefd.com/mp3music/): failed to open dir: No such file or directory in /var/www/www.dmdefd.com/musicmanager/aliases.php on line 9
Warning: scandir(): (errno 2): No such file or directory in /var/www/www.dmdefd.com/musicmanager/aliases.php on line 9
請注意,虛擬服務器工作正常,我只是無法進入文件。
您是否試過軟鏈接或硬鏈接目錄? Apache不會脫離它的文檔根源afaik – Psi
硬連接不起作用。您應該能夠訪問文檔根目錄之外的文件。 Stack Overflow有很多例子。我只是無法讓它工作。 –
我知道我曾試圖做同樣的事情,並且在一段時間之前失敗了。據我記憶,這是由於在覈心配置的某個地方存在一個目錄,該目錄在apache中鎖定到該目錄。 – Psi