4

ワードプレス以外のウェブサイトと同じドメイン www.mysite.com のワードプレス ブログの間でセッションを共有する方法を知りたいです。これにより、ユーザーがサイトにログインしたときにブログにもログインできるようになります。

私のサイトのサブディレクトリとして wordpress をインストールしました。私のサイトの URL は www.mysite.com で、www.mysite.com/wordpressBlog のように wordpress にアクセスします。

メインサイトの user_login.php でアクティブ化しました

session_start();

Cookie を有効にし、ワードプレスに wp_unregister_GLOBALS() を追加しました

$no_unset = array( '_SESSION', ...

しかし、何も起こりません。メイン サイトにログインしても、ブログにログインする必要があります。

実際のところ、私のサイトとワードプレスのブログは同じドメインにあります。私のサイトの URL は www.mysite.com で、このように wordpress にアクセスします www.mysite.com/wordpressBlog メイン サイトの user_login.php でアクティブ化

session_start();

クッキーを有効にするために、ワードプレス wp_unregister_GLOBALS() に $no_unset = array( '_SESSION', ... を追加しました

しかし、何も起こりません。メイン サイトにログインしても、ブログにログインする必要があります。

4

1 に答える 1

3

両方のサイト間でセッションCookieを共有できるようにするには、同じドメイン名(mysite.comなど)で実行する必要があります。セッションCookieのスコープが次の場合、以下は有効な構成になります。mysite.com

www.mysite.com
blog.mysite.com

PS。このドメインスコーピングの問題を回避するためにクロススクリプトハックを使用することはお勧めしません。セキュリティ上の理由から、ドメインに限定されています。

[編集]

また、2つのサブドメイン(サイト)を異なるサーバーでホストすることは完全に有効であることも指摘しておく必要があります。

[編集]

WP以外のサイトを使用しているため、質問に簡潔な回答を提供することは困難です。私の最善の提案は、WordPress StackExchangeに投稿することです。ここでは、以前にこの構成を行ったことがある人を見つけることができます。

あなたの問題は、WPからのCookieの範囲に集中していると思います。wp-config.phpを編集し、 「」を使用するようにCOOKIE_DOMAINを設定すると、このWordPressStackExchangeの投稿で参照されている問題に役立つ場合があります。

いくつかの投稿は、この設定を完全に削除することについて語っています。いずれにせよ、HTTPセッションをデバッグして、どのスコープを使用してどのCookieが送信されているかを確認する方法が必要です。そのため、FireBugをお勧めしました。いずれにせよ、WP Cookieを認識するために、WP以外のサイトを再コーディングする必要があるため、何が起こっているのかを理解することが重要です。

私はあなたの知識に役立つかもしれないマルチサイトドメインマッピングに関するこの他の投稿に出くわしましたが、これはWPサイトにのみ関係しているので、あなたが必要としているものとは正確には異なります。

于 2012-07-06T08:41:12.833 に答える