PHP远程访问.htaccess受保护的文件

时间:2012-06-11 06:29:11

标签: php file .htaccess

我在尝试访问.htaccess受保护目录中的远程服务器上的.txt文件内容时遇到了一些麻烦。

我要做的是以下内容:

  • 通过PHP连接到FTP服务器并使用ftp_nlist检索目录中所有.txt文件的列表。到目前为止,一切正常。

  • 对于找到的每个.txt文件,我想检索内容。有许多方法可以正常执行此操作,当没有.htaccess文件保护.txt文件时,所有这些方法都可以正常工作。

BUT!只要我使用.htaccess文件保护在线目录,我尝试的每个方法都无法获取.txt文件的内容。保护包含.txt文件的文件夹的.htaccess文件具有以下内容(并且没有其他内容):

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

显然,在线PHP网站本身可以毫无问题地访问.txt文件的内容,而.htaccess文件本身就完美地完成了它的工作(拒绝直接访问任何文件),但是当我在试图从我的WAMP服务器远程访问.txt文件,我找不到绕过.htaccess保护的方法。

基本上,我想从我的WAMP服务器远程模仿我的网站已使用$contents = file($filepath)在本地进行的操作。当然必须有办法......任何人都可以指出我正确的方向吗?我应该使用不同的方法来保护.txt文件,还是应该使用特定的PHP函数来访问内容?

1 个答案:

答案 0 :(得分: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

的访问权限