[Tep-j-general] Re: クッキーのタイミング

Back to archive index

hamada bungu****@leo*****
2005年 10月 6日 (木) 14:21:39 JST


こんにちわ。

On Thu, 06 Oct 2005 13:28:58 +0900
田中裕之@グリニッジ <tanak****@green*****> wrote:

> // lets start our session
>   if (function_exists('session_set_cookie_params')) {
>     session_set_cookie_params(0, substr(DIR_WS_ADMIN, 0, -1));
>   }
>   tep_session_start();

ああそうか。言われてみれば

「(セッションを維持するために投げる)cookieのパラメーターを決めてからセッ
ションを開始する」

のが筋ですね。これは気付いてませんでした。

> なぜ末尾の/を切り落とす必要があるのか分かりませんが、
> MS2に倣う形で問題がないのではないのかなと思います。

これについては、当方もPHPマニュアル中に気になる記述を見つけておりました。

http://jp2.php.net/manual/ja/function.session-set-cookie-params.php

> when setting the path that the cookie is valid for, always remember to
> have that trailing '/'.
> 
> CORRECT:
> session_set_cookie_params (0, '/yourpath/');
> 
> INCORRECT:
> session_set_cookie_params (0, '/yourpath');
> 
> no comment on how long it took me to realize that this was the cause of
> my authentication/session problems... 

「cookieにpath値を設定する場合は引きずる'/'に注意を払え」
「私の認証/セッション問題がこのせいだと気付くまでに要した長さについては
言葉も無い」

MS1Jのcookieパスはわざわざ末尾の'/'を切り飛ばし、この方が「正しくない」
と言う方で指定されてる→これってどうなのかなぁと思ってました。

そうですか。MS2では'/'を切り飛ばしてないんすね…(^^;;

> 蛇足ですが、html_output.phpのtep_href_linkにて、SSL指定のURL生成では
> 必ずURLにセッションIDを付けるなっているようですが、これが正しい仕様
> なのか悩んでいます。

これは当方も思ってました。

以前の当方は漠然と

「SSL下では(安全のため?)cookieが使えないんだろう」
(でもその割に'session.cookie_secure'なんて設定があってヘンだなぁ?)

と理解してたんすが、SpideKiller工事の時に条件判定部を壊しまして、誤って
SSLでcookie投げたら通った→「実は使えるんやん!」とか(^_^;)

はまだ






Tep-j-general メーリングリストの案内
Back to archive index