私はYiiフレームワークを使用してウェブサイトを開発しています。私のウェブサイトには、ユーザープロファイルがあります(既に実装されています)。私はユーザーがプロフィール画像をアップロードできるようにファイルアップローダーを持っています。一部のプロファイルは一般に公開されているものもあれば、非公開のものもあります。プライベートプロファイルには公開ユーザーがアクセスできないようにする必要があります。このプロファイルの画像には、プロファイルの所有者以外の誰もアクセスできない場合があります。プロファイルの所有者だけがアクセスできるように、ユーザーのプロファイルイメージを非公開で保存する方法はありますか?
MySQLデータベースに画像を保存するのは悪い考えです。パフォーマンスが低下し、ウェブホストで画像が許可されない可能性があります。私は私の保護されたディレクトリに画像を格納することを考えたが、ここで完了した場合、私はすべての画像にリンクすることはできません。有効なプロフィール(公開プロフィール、またはユーザに属するプロフィール)に画像を表示するにはどのようにすればいいですか?
ヒントやアイデアは、Yii、phpまたは他のものに関係します。私の質問が不明な場合は教えてください。ありがとうございました。
*私は正式なウェブ開発コースを経験したことがなく、他の多くの人と同じように自分の時間に知っていることをすべて学んだので、非常にシンプルで明白な解決策が見当たりません。
は、あなたが取り組む必要があるarhcitectureの実装のように聞こえます。あなたは、彼らがプライベートまたはパブリックであるユーザーの種類を格納し、次に視聴者が他のユーザーのプロファイルを表示しようとしたときにそれを確認する必要があります。彼らが表示しようとしているプロファイルの(プライベート)ユーザーとしてログインしていない場合は、何も表示しないでください。 – thescientist
返事をありがとう。私はこれについて完全にはっきりしていなかったと思う。あなたが提案したように私はすでに実装しています(プライベートユーザとパブリックユーザ、そしてURLをハックしたユーザは、いくつかのエラーページ/アクセス拒否ページに送られます)。しかし、私は、「賢い」ユーザーが(画像がパブリックドメインに保存されているので)いくつかのURLのハックを介してプライベートユーザーの画像にアクセスすることが依然として可能かもしれないと心配しています。上記のように、保護ドメインに保存したくない理由は、ユーザーのページに画像を表示できないことですが、これを考えて間違っているのでしょうか? – Denzil