2

簡単な認証スクリプトがあります。ログインフォームから投稿されたデータをデータベーステーブルのユーザーと比較します。成功した場合は、次の方法でセッションを開始します。

session_start();
$_SESSION['login'] = "1";
$_SESSION['user'] = $_POST["user"];
$_SESSION['admin'] = "1";

問題は、URL に常にセッション ID がある (Cookie が有効になっている) ことです。PHP.ini は次のように設定されています。

session.use_cookie = 1
session.use_only_cookie = 0
session.use_trans_sid = 1

そして、localhostで実行しています。

セッションが Cookie でセッション ID を取得することを優先したい - 有効になっている場合。URL でのセッション ID の取得は、Cookie が無効になっている場合にのみ使用する必要があります。自動的にそのように動作するはずだと読みましたが、そうではありません。

4

1 に答える 1

0

あなたは多分逃す

use_trans_sid = 0

「use_trans_sid」を有効にすると、セッション ID が毎回 URL に添付されます。

于 2013-01-28T22:27:32.970 に答える