domainname.de、domainname.ch、domainname.at、domainname.esなど、さまざまなドメインからアクセスできるWebサイトを運営しています...
顧客が支払いを希望すると、もちろん https で保護された支払いページが表示されます。サーバーの制限により、1 つのドメイン (domainname-secure.com) にのみ配置できる SSL 証明書は 1 つだけ許可されています。
私はさまざまな価格を請求するため、ユーザーが属するドメインを知る必要があります。そのため、domainname-secure.com にリダイレクトするときに、ドメイン (例: domainname.de) をセッション変数に保存し、get パラメーターとして$_SESSION['domain_default']
追加して sessionID を渡します。session_id=[session_id]
次に$_GET['session_id']
、次のコマンドを実行して、domainname-secure.com でセッションを利用できるようにします。
session_id($_GET['session_id']);
session_start();
自分でテストすると、完全に正常に動作しますが、誰かが domainname-secure.com にアクセスして$_SESSION['domain_default']
.
これは1日に数回発生しますが、なぜこれが機能しないのか本当にわかりません! 私は多くの異なるリンクから何度もテストしていますが、私にとっては完全に正常に動作します.
なぜ時々うまくいかないのか想像できる人もいますか?
セッションIDを別のドメインに渡すのは「良い」または安全ではありませんか?また、リダイレクト後に常に読み取り可能であるとは限りませんか?
間違いを判断するのは難しいと思いますが、セッションに関する既知の問題や、より良い方法でそれを行うためのヒントを探していますか?