1

1 つの接続/IP への Web サイトへのマルチログインを停止する方法はありますか?

私のウェブサイトがhttp://website.comで、1 つの IP から 1 人のユーザーだけが閲覧できるようにしたいとしましょう。

これは、php、javascript、または htaccess を使用して可能ですか?

私はhtaccessに対して多くのテストを行いましたが、すべて失敗しました

前もって感謝します

4

2 に答える 2

3

はい、しかし、あなたはすべきではありません!

1 つの IP アドレスで複数のユーザーが一般的な認証システムにログインするのを止めたいだけだと仮定すると、usersデータベース テーブルにlast_ipとの 2 つの行を追加するだけlast_seenです。

last_ipユーザーの IP アドレスが変更された場合、ページが読み込まれるたびに更新されます。 last_seenページが読み込まれるたびに更新されます。

ユーザーがログイン要求を送信したら、別last_ipのユーザーの IP アドレスがユーザーの IP アドレスと同じlast_seenであり、適切な時間 (たとえば 30 分) 内にあるかどうかを確認します。その場合、ログイン要求を拒否します。

簡単に避けられるからダメなんだよ

VPN、TOR、またはオープン プロキシを使用すると、ユーザーは複数の IP アドレスをさまざまなブラウザーで操作したり、同じブラウザーのさまざまなタブで操作したりすることが非常に簡単になります。

また、IPv6 に期待すると、各ユーザーは標準で 64 ~ 256 個の IP アドレスを持つ可能性があります。

正当なユーザーに害を与えるため、これも悪い考えです。

貧しい国のユーザー、同じ家に住んでいる複数の人、大学や職場の人々が IP を共有している可能性があります。ユーザーが IP アドレスに適切にマップされていません。

于 2013-08-22T22:57:29.520 に答える
1

はい、可能ですが、少し奇妙です:)セッションが閉じられた/期限切れになったときはいつでも、セッション(IPアドレスも保持しています)をDBに保存できます-削除します。

Codeigniter を使用している場合は、こちらをお読みください
それ以外の場合は、ここに素敵な「ウォークスルー」があります。

于 2013-08-22T22:54:38.427 に答える