1
  1. メインリンクは: yourname.com/movie/film.mkv

  2. ユーザー用のダウンロード リンク: yourname.com/2012/Esx123Sxzz96/film/

ユーザーがメイン リンクを表示せずにリンク 2 をリンク 1 に切り替えて、ダウンロード マネージャーに表示する方法は?

4

2 に答える 2

1

まず、.htaccessユーザーがデータに直接アクセスすることからサイトを保護する場合は、a を使用して /movie/ フォルダーへの直接アクセスを防止します。

次に、php を介してファイルを渡し、header最初に適切なファイルを送信します。詳細については、このスレッドを参照してください。

ムービーが大きなファイルである場合は、別の方法でファイルを送信することを検討してください。たとえば、x-sendfile私が自分で使用したことのない方法などです。詳細については、この回答を参照してください。

編集:ユーザー認証、統計追跡、ダウンロード制限などを行う必要がなく、単に使用できるパスをパスに書き換えたい場合.htaccessrewriteただし、提供する2番目のパスの種類では、目的のパスを抽出するロジックが必要なように)。リンクをクリックした後にユーザーが「秘密のパス」を知っていることを気にしない場合は、単純に a を使用できます。header('Location: yourname.com/movie/film.mkv");これにより、ユーザーはファイルにブックマークを設定でき、yourname.com/2012/Esx123Sxzz96/film/パスを再度確認する必要がなくなります。

再編集どうやら本当の問題は、メディアを保存し、ソースを隠して「別の」パスを介してアクセスできるシステム全体を作成する方法です。

私なら、保存したいすべてのメディアのリストまたはデータベースを作成します。リストにアイテムを追加するときは、一意の ID を付与します。簡単にするために、0 から始めて、ファイルごとに 1 ずつ増やしていきます。各映画の長さ、ファイルサイズなど、メディアからのより多くの情報をリスト/データベースに保存できます...

次に、これらのファイルをユーザーにリストしたい場合は、単純hashに id を使用できます。このようなものを使用すると、次のような文字列が作成されU6dcます ... を使用してリンクを構築できるようになりました<a href="mysite/files/$hashedValue">Link for $filename</a>

mysite/files/using aへの呼び出しをインターセプトし.htaccess、リダイレクトしてfiles.php、パラメータU6dcをリスト内の ID に変換する役割を果たします。この ID を取得すると、ドライブ上のメディアを簡単に見つけて、おそらく を使用してユーザーに送信できx-sendfileます。

于 2012-11-27T15:48:32.343 に答える
0

.htaccess を使用すると、独自の条件を宣言できます。

于 2012-11-27T15:46:41.157 に答える