Macでクッキーが呼び出せない
以下のような遷移を作っております。
・HtmlファイルにJavaScriptでクッキーを以下のように書き込む。
var no = '01010088';
var img_url = '../01010088i.gif';
var url= '../01010088.html';
var itemname= '日本語商品名';
var price = '7,960';
var souryou = '1';//有料の場合は1 無料の場合は0
setCookie(no,img_url +':' + url + ':' + itemname + ':' + price + ':'+ souryou +':'+ exp2 + ':',exp,limit);
function setCookie(key,val,val_exp,val_limit) {
tmp = key + "=" + escape(val) + "; ";
tmp += "path=/ ;";
if(limit > 0){tmp += "expires= " + val_exp.toGMTString(); + "; ";}
document.cookie = tmp;
}
・CGIでクッキーを呼び出す。その際UTF-16をデコード処理してSjisにしております。
#クッキーの取得
&getCookieName();
ここにデコード処理を書いております。多いので割愛
sub getCookieName {
local($xx, $name, $value);
foreach $xx (split(/; */, $ENV{'HTTP_COOKIE'})) {
($name, $value) = split(/=/, $xx);
$pure_value = $value;
$value =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack("C", hex($1))/eg;
$COOKIE{$name} = $value;
push @COOKIE,"$name:$value$pure_value:\n";
}
}
で実際Windowsで閲覧するとクッキー情報が正常に出力されるのですが、Mac、自社サーバーにアップしたページを見るとOKなのですがあるレンタルサーバーに同じものをアップしてみるとだめなのです。
あいまいな表現ですが、なにかこれだけの情報でなにが原因か事例がありますか?
もし不足な情報ならご指示ください。
補足
質問の仕方が悪かったので補足します。 JSPのプログラムで複数のURLからセッションのようにクッキーを利用する仕組みを考えています。 document.cookie = key + "=" + escape(val) + ";"; document.cookie += "path=/;"; document.cookie += "domain=www.xxx.ne.jp;"; document.cookie += myExpires + ";"; SetCookieでこのような記述をしてみたのですが、発行元のURLから別のURLに移動したときにpath値が正しく飛ばないことがあるのですが、わかる方はいますか?