2012-06-11 68 views
0

我在嘗試訪問.htaccess受保護目錄中遠程服務器上的.txt文件內容時遇到了一些問題。PHP遠程訪問.htaccess受保護文件

我所試圖做的是以下幾點:通過PHP

  • 連接到FTP服務器,並使用ftp_nlist檢索目錄中的所有.txt文件的列表。到此爲止,一切正常。

  • 對於找到的每個.txt文件,我想檢索這些內容。有很多方法可以正常執行此操作,當沒有保護.txt文件的.htaccess文件時,這些方法都可以正常工作。

但是!只要我使用.htaccess文件保護在線目錄,我嘗試過的每一種方法都無法獲取.txt文件的內容。即保護包含.txt文件的文件夾的.htaccess文件有如下(沒有別的):

<Files *.txt> 
Order Deny,Allow 
Deny from All 
</Files> 

顯然,在線PHP網站本身可以訪問.txt文件的內容沒有任何問題,而.htaccess文件本身完成它的工作是完美的(拒絕直接訪問任何文件),但是當我試圖從我的WAMP服務器遠程訪問.txt文件時,我無法找到一種方法繞過.htaccess保護。

基本上,我想通過使用$contents = file($filepath)從我的WAMP服務器遠程模仿我的網站已經在本地做了什麼。一定有辦法......任何人都可以指引我正確的方向嗎?我應該使用不同的方法來保護.txt文件,還是應該使用特定的PHP函數來訪問內容?

回答

0

你的問題不清楚。
如果使用.htaccess保護文件夾或文件,您仍然可以使用FTP下載該文件。 .htaccess隻影響Apache(http請求)。

如果你想能夠無論如何下載這些文件,HTTP,那麼你只是做了一個腳本,輸出其內容:

downloader.php:

//> Check if the admin is logged, and check if $_GET['filename'] is allowed 

    readfile($_GET['filename']); 

然後你可以要求你的文件搭配:

http://yoursite/downloader.php?filename=file.txt 

當然一定要保護這個downloader.php

訪問