我有一個內部的文檔根目錄,多數民衆贊成在執行的指數腳本:列表從文檔根目錄之外的所有子目錄和文件
/var/www/mywebsite/protected-folder/index.php
現在我有一個目錄之外包含列表文檔根目錄有文件子目錄:
/var/www/uploads/LIST OF SUBDIRECTORIES/file
當上傳文件夾是文件根目錄裏面我用這個代碼:
<?php
$dir = "/var/www/uploads";
$list = scandir($dir); /* This function sorts dirs */
$list = array_diff($list,array(".","..","index.php"));
echo "<ol>";
foreach ($list as $file)
{
if (!is_dir($file)) echo "<li><a href='https://mysite.ca/protected-folder/uploads/$file'>$file</a></li>\n";
}
echo "</ol>";
?>
但是,除非登錄並且可以訪問此腳本,否則此文件夾需要公開爲私人。
如何創建指向文檔根目錄外的文件夾的鏈接,以及如果單擊該鏈接以顯示該目錄內的文件?
編輯:爲了使我的問題更加清晰的上傳文件夾將有子目錄的兩層,這將是一個未知的數字:/var/www/uploads/UNKNOWN LIST OF SUBDIRECTORY LEVEL 1/UNKNOWN SUBDIRECTORIES LEVEL 2/ALL FILES (file can be any file type)
這是使用Apache的指標,允許用戶通過橫向之前做的方法子目錄。這必須是安全的,以防止直接的URL訪問,因此這就是我想要的工作:
列出所有的第一個子目錄鏈接(鏈接到所有子目錄級別1)
然後,一旦鏈接當點擊列表中的所有子目錄級別2文件夾是在子目錄級別1
最後,如果該鏈接(子目錄2)點擊顯示所有處於子目錄中的文件2
希望清理東西
我將如何獲得發佈信息?這個腳本需要是自動的,不應該從用戶那裏得到任何信息。它應該簡單地輸出每個目錄 – fixnode
中的文件,它可能是GET或POST。您現有的應用輸出鏈接。用戶是否不點擊這些?該鏈接會讀取類似「file.doc」 – Cfreak
但鏈接連接到目錄而不是文件。 – fixnode