0

サブドメイン dev.mysite.com で開発された Cakephp のサイトがあります。メイン ドメインに (.htaccess 経由で) リダイレクトした後、mysite.com にアクセスするとセッションが機能しなくなりました。それでも、dev.mysite.com では問題なく動作します。

.htaccess リダイレクト (public_html で):RewriteRule ^(.*)$ /dev/$1

4

2 に答える 2

0

セッションは、(デフォルトで) 現在のドメイン (この場合は dev.mysite.com) に関連付けられている Cookie に基づいています。ドメインが変更されると、同様のドメイン (mysite.com) から Cookie (およびセッション) にアクセスできなくなります。おそらく調べたいことは、両側でsession_set_cookie_paramsを設定しdomainて、mysite.com の任意のサブドメインのセッション情報にアクセスできるようにすることです。.mysite.com

http://us.php.net/manual/en/function.session-set-cookie-params.php

session_set_cookie_params(0, '/', '.mysite.com');

電話をかける前にこれを追加してくださいsession_start()

更新 1:

CakeSessionクラスを読むと、ホストを設定するメソッド (および静的変数) があるように見えますが、それが使用されているようには見えません (TestCakeSession クラスを除く)。別の方法は、 CookieComponentを使用して設定$this->Cookie->domain = '.myhost.com';することです。これにより、任意のサブドメインから Cookie にアクセスできます。暗号化された Cookie を使用する場合、フレームワークの外で Cookie の値を取得するのが困難になることに注意してください。

于 2012-07-11T18:35:18.140 に答える
0

サブドメインをメイン ドメインにリダイレクトする場合の注意事項。たとえば、サブドメインであるサイトをメイン ドメインに移動する場合、つまり、ファイルをメイン ドメインに移動する場合は問題ありませんが、サブドメインを閉鎖し、ユーザーをメイン ドメインにリダイレクトすると、標準的な問題が発生します。

メイン Web サイトが mydomain.com にあり、サブドメインが site.mydomain.com にあるとします。次に、site.mydomain.com へのリンクを投稿した可能性のあるサイトを検索する検索エンジンは、site.mydomain.com をメイン ドメイン (パーク ドメインのような) への追加ドメインとして扱い、メインへのリストを作成することさえできます。サブドメインの URL を持つ Web サイト。

多くの場合、ウェブマスターはサブドメインを削除します。DNS の変更が反映されるまで、サブドメインは自動的にメイン Web サイトにリダイレクトされ、正規の問題がポップアップするため、悪い動きです。

サブドメインには細心の注意を払う必要があります。

于 2012-08-13T03:26:16.610 に答える