エクラのクッキーは指定が変です
昨日今日と連休です。明日は茨城県鹿島、明後日は横浜、そのまま新潟県魚沼市に出張です。
それにしても寒さが厳しい一日でした。だから、ずーと家の中に居ました。

せっかくの休みの日。しかも家で過ごすのですから少しでもサイトの更新と思うのです。
あ、日記を書くだけが更新じゃないのです。誰も出来ないものを作るのが更新です。

で、暫く前からエクラのクッキーを管理するページを作っていました。
JavaScriptでクッキーを操作するなんて朝飯前です。と、自分で思っていました。
エクラに新規に入会して早5年経ちました。当時から試してはいたのです。
でも、いつも肝心なところで躓くのです。何かが変なんです。その何かが分からず今まで来ました。

あぁ、苦節5年間。その疑問が解けました。原因は、
エクラが発行するクッキーのdomain指定が想定外な値である!ということでした。
それは、domain=.www.eclat.cc; (ドットダブリューダブリューダブリュードット・・・!)
最初のドットって何か意味があるのですか?
というより他にサブドメインのクッキーなんてあるのですか?と叫びたい気持ちです。

クッキーの書き換えはdomainpathを完全一致させなきゃいけません。
今まではdomain指定なし、つけたとしてもdomain=www.eclat.cc;でしたから処理できなかったのです。

謎は全て解けた!!
後は色々と実践あるのみ。とばかりにログインしないでユーザー切り替えとかやってみました。
ログにdefaultlog3の足跡が付いているのはその為です。

それにしても、エクラでドメインに変な指定をしているなんて夢にも思いませんでした。
する必要がないし、サブドメインのページすらないのですから。
しかも発行しているクッキーも2つだけです。HOMEキーとSIDキーだけです。
それらのdomainpathは挙動だけですぐに分かりますよね。

HOME → path=/home/yadokari/; (ここのサイトの場合)
SID → path=/; ※必ずルートで発行されます。当たり前です。

HOMEの値は数値の1のみです。document.cookie.indexOf('HOME=1;') == -1のように使用しています。
SIDの値は32文字の暗号です(たぶんmd5)。
有効期限は10日間です。ただし、自作ルーチンを通せば好きな有効期限で保持できます。
発行されたSIDはログアウトや新たにログインすると無効になります(当然です)
でも、ログアウトや新たなログインしないでクッキーの書き換えを行えばずーと有効になるのです。

ログアウト状態の方や、もともと会員でもない方にログイン状態にすることも簡単です。
ログイン状態の方も一時的に別のIDのログイン状態にして、去るときに元のIDのログイン状態にする。
ということも簡単に出来ます。

その一時的なログイン状態のIDをdefaultにします。
サーバにリクエストする前にセットして、取得が終わった直後に元に戻します。

雪っ子

もしも誰かのログにdefaultの足跡が付いても本人は訪問していません。
暫くは検証状態です。