私のウェブサイトではユーザーがログインする必要があり、一部のユーザーが他のユーザーよりも多くの情報にアクセスできるようにしたいと考えています。css display noneプロパティを使用して、タブメニューの一部の項目を、ユーザーが誰であるかに応じて表示されないように設定します。このように、彼らは情報を表示するためにタブをクリックすることができません。これは、Webサイト上の一部の資料へのアクセスを制限するための良い方法ですか?もっと良い方法はありますか?私はjavascriptとphpを使用しています。ありがとう。
4 に答える
これは多くの理由でひどい考えです、いくつかの理由は次のとおりです:
-私のようなユーザーは、ページのソースを表示してクリックすることがよくあります。
-ブラウザを使用している人やスタイルシートを表示しない設定はどうですか?
-Facebookなどでリンクを送信または共有するユーザーはどうですか?ログインしたり、それらの権限を持っていなくても、すぐにページに移動できますか?
-Webクローラーはこれらのページのインデックスを作成し、検索結果に表示しますか?
コンテンツを非表示にするだけでなく、バックエンドでこれを実行し、ユーザーを禁止する必要があります。
それは良い考えではありません。PHPまたはその他のバックエンドおよびセッション変数やCookieを使用してユーザーに表示される内容を制限する必要があります。今説明した方法でそれを行った場合、誰でもページのソースにアクセスして非表示のコンテンツにアクセスできるためです。私の個人的なアドバイスですが、必要がなければ、ユーザー登録で車輪の再発明をしないようにしてください。現代のほとんどのコンテンツ管理システムは、ほとんどのニーズに対応します。
編集:
これらのコンテンツ管理システムをご覧ください。
短い答え:いいえ、それは良い考えではありません。理由:ブラウザ開発ツールを理解しているユーザーは、情報を知っていれば情報を表示したり、詮索したりすることができます。開発者が犯した間違いに気づいたら、あなたが隠そうとしたすべてのものを見て、全盛期を迎えます...さらに、ページの読み込みを遅くしたり、帯域幅を使い果たしたりする不要なデータを行に送信します。
CSSを介してこの情報を隠すことはひどい考えです。より良い解決策はjavascriptを使用することであり、最良の解決策はバックエンドでこれにphpを使用することです。