私はギャラリーのウェブサイトを作っています。写真とアルバムはデフォルトでは公開されないようにする必要がありますが、所有者は必要に応じて公開URLを共有できます。私はまたこれのために短いURLを使いたいと思う。写真とアルバムを閲覧するための一時的な許可
私はこれを行うための最善の方法を見つけようとしています。最初は短いURLコード(Zneg8rjK
のようなもの)と完全なURL(/album/5/
)を持つMySQLテーブルを持つことができたと思っていました。ユーザーがこのリンク(mysite.com/Zneg8rjK
)にアクセスすると、セッション変数には/album/5
のハッシュだけを加えたものに加え、完全なURLにリダイレクトされます。そのページでは、現在のページを再ハッシュして、セッションに含まれているかどうかを確認できます。問題はないですが、そのアルバムの写真をクリックするとどうなりますか?それは崩壊する。
私が考えた次の解決策は、各アルバムと各写真に秘密鍵を保存してから、/album/5/secretkey
のような公開アドレスを持つべきだということでした。短いURLは代わりにこれを指すことができます。しかし、どのようにすれば、アルバム内のすべての写真を閲覧する権限をユーザーに与えることができますか?代わりに、秘密のアルバムURLを使ってアルバムにアクセスした場合にのみ、各写真をリンクして写真URLの秘密のバージョンを指すようにする必要がありますか?私の関心事は、アドレスバーから秘密鍵/ URLをできるだけ離しておき、ユーザが誤って共有しないようにしたいということです。しかし、よりよい解決策。
思考?
待機しても、URLをハッシュする必要がありますか?クライアントがセッション変数を変更する方法はありませんか?
ギャラリーの構造は何ですか?どのように設定されているか、ユーザーが画像などとやりとりするときに何が起こるかを知らなければ、これはむしろ不可能な質問です。 –
あなたはどういう意味ですか?以下の答えは、私にはうってつけです。それぞれの写真はアルバムに属しています...もっと何をする必要がありますか?まだ石には何も置かれていない。ユーザーが画像を表示しようとすると、画像を表示する権限があるかどうかが確認され、その画像が表示されるか、画像が表示されます。 – mpen