0

.htaccess で保護されたディレクトリにあるリモート サーバー上の .txt ファイルのコンテンツにアクセスしようとすると、少し問題が発生します。

私がやろうとしていることは次のとおりです。

  • PHP 経由で FTP サーバーに接続し、ftp_nlist を使用してディレクトリ内のすべての .txt ファイルのリストを取得します。ここまでは、すべて正常に動作します。

  • 見つかった .txt ファイルごとに、内容を取得したいと考えています。.txt ファイルを保護する .htaccess ファイルが存在しない場合、通常はこれを行う方法がいくつかあります。

しかし!オンライン ディレクトリを .htaccess ファイルで保護するとすぐに、試したすべての方法で .txt ファイルの内容を取得できません。.txt ファイルを含むフォルダーを保護している .htaccess ファイルには、次のものがあります (他には何もありません)。

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

明らかに、オンライン PHP Web サイト自体は問題なく .txt ファイルの内容にアクセスでき、.htaccess ファイル自体はその仕事を完全に行っています (ファイルへの直接アクセスを拒否しています)。 .txt ファイルを WAMP サーバーからリモートで取得したいのですが、.htaccess 保護をバイパスする方法が見つかりません。

基本的に、WAMP サーバーからリモートで模倣したいと考えています$contents = file($filepath)。確かに方法があるに違いない.誰かが私を正しい方向に向けることができますか? .txt ファイルを保護する別の方法を使用する必要がありますか、それとも特定の PHP 関数を使用してコンテンツにアクセスする必要がありますか?

4

1 に答える 1

0

あなたの質問は明確ではありません。
フォルダまたはファイルを .htaccess で保護しても、そのファイルを FTP でダウンロードできます。.htaccess は Apache (http 要求) のみに影響します。

とにかく http でこれらのファイルをダウンロードできるようにしたい場合は、そのコンテンツを出力するスクリプトを実行するだけです。

ダウンローダ.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

于 2012-06-11T09:22:39.307 に答える