私は MP3 形式で曲を販売する PHP でショッピング カートを開発しています。製品の展示では、訪問者/ユーザーに 1 回だけ曲を聴いてもらいたいと考えています。JWプレーヤーのようなプレーヤーを使用して曲を再生するとします。プレーヤーは Web ページのソース コードでファイル パスを公開し、ファイルを直接ダウンロードできます。
訪問者が曲ファイルのパスを知らないように、曲を再生するために探しているもの。
どうすればこれを回避できますか? ご意見をお聞かせください。
ありがとう
あなたは DRM システムを求めています。そんなものは存在しません。
根拠:
これが DRM が解決しようとしているものです。あなたにできることは、エンドユーザーから事実を隠そうとすることだけです. 頑張ってください...
(上記の例では、「Alice」を「サーバー」に、「Bob」を「サイト訪問者」に、「Eve」を「料金を支払わずにファイルをダウンロードしたいユーザー」に置き換えることができます。)
DRM システムを使用できないことを受け入れる場合は、さらに多くの可能性があります。
販売する実際のファイルとは異なるサンプル ファイルが必要であることに注意してください。これが、ユーザーが料金を支払う前に実際のファイルを取得するという問題を解決する唯一の方法です。
できません。
URL を隠すことはできますが、人々が曲を無料でダウンロードするのを防ぐことはできません。それは、HTTP がどのように機能するかだけではありません。URL を提供する場合は、隠されているかどうかに関係なく、最終的に再生するデータで応答する必要があります。そうしないと、JWPlayer はデータを再生できません。
JWPlayer は Web サイトに埋め込まれているため、データを提供するバックエンド サーバーにリクエストを送信する必要があります。これらのリクエストは簡単に傍受でき、人々がフル アルバムを無料でダウンロードできることに気付くまでには、ほんの数日しかかかりません。
したがって、ショップを台無しにしないようにしたい場合は、低品質のmp3を提供するか(他のほとんどの人がそうしているように)、曲のプレビューを提供するか(他のほとんどの人がそうしているように)、曲のプレビューを提供します.
URL で渡されるランダムな文字列に基づいて、MP3 ファイルを提供するページを作成します。各ランダム文字列は、実際のファイルの場所を参照して、データベース テーブルに格納されます。曲を一度聴いたら、データベースのステータス フィールドを反転して、そのランダムな文字列が再び使用されるのを防ぎます。
ファイルの実際のパスを公開することを心配する必要はありません。ユーザーがソース コードを確認したとしても、ランダムな文字列が表示されるだけだからです。
また、ダウンロードについても同じタイプのことを行う必要があります。ユーザーがログインすることを要求し、ファイルへの直接パスの代わりに、php ページを介して渡すことで、ファイルへのリンクが「外部」で取得/使用されないようにします。
つまり、基本的には、購入しようとしている曲の「サンプル」を購入者に提供することです。サンプルを聴いた後、フル ソングを購入できます。
私の意見では、ここで 2 つのパスをたどることができます。
これまでの曲を、たとえば 1 分間などの小さなサンプルに切り刻み、その部分だけを聴かせます。ユーザーがそれをダウンロードすることに成功した場合、彼は完全な曲を所有していないため、問題はありません。これは、 FFMPEGなどの mp3 エンコーダー/デコーダーを使用して小さなサンプルを作成することにより、サーバー側で自動的に行うことができます。
Flash はオーディオ/ビデオのストリーミングに非常に適しているため、ユーザーに曲のサンプルを提供するオンデマンド ストリーミング メカニズムを使用できます。この方法では、曲全体ではなく、サンプルのバイトのみをクライアントに送信します。これは、 Red5などのオープン ソース メディア サーバー テクノロジを使用して実現できます。
オプション 2 はおそらく最も確実な解決策ですが、最も時間がかかり、達成するのが最も難しい解決策でもあります。
多くのオンライン ミュージック ストアも同じことを行っています。彼らはあなたに限られたプレビューしか提供しません.
ここに私が知っているいくつかがあります:
乾杯