0

ウェブサイトは定期的にHTTP400BadRequestエラーを出します。これは、2つのCookieが大きすぎることが原因です。

私はlivestream.comを使用して(Flashを使用して)ライブビデオを再生していますが、ドメインで4つのCookieを設定しているAkamaiAnalyticsを使用しているようです。clientLastHTimes clientLastPTimes AkamaiAnalytics_VisitIsPlaying AkamaiAnalytics_VisitLastCloseTime

最初の2つは、前回のクラッシュで8000文字を超える問題を引き起こしたものです。

だからこれをやってこれらのクッキーを削除するphpの方法を試しました

setcookie(
  'clientLastPTimes', '', time() - 3600, '/','mydomain.com', false, false
);

また

setcookie('clientLastPTimes', '', 1);

動作していません。

次に、ページのロードとアンロードでJavascriptを使用して同じことを試みました。

function Delete_Cookie( name, path, domain ) {
  document.cookie=name+"="
  + ((path) ? ";path="+path:"")
  + ((domain)?";domain="+domain:"") 
  + ";expires=Thu, 01 Jan 1970 00:00:01 GMT";
}

Delete_Cookie('clientLastPTimes', '/', 'mydomain.com')

これらのいまいましいクッキーはまだそこにあります。同じ名前の他のCookieを作成することもありました。通常、パスまたはドメインがわずかに異なることが原因であることがわかりました。過去の日付を設定せずに、コンテンツも編集しようとしました。

だから本当にこれと格闘しています。これらのCookieを削除する方法や、HTTP400Cookieの過負荷を回避するために他の方法を知っている場合は....私は非常に素晴らしいと思います。

どうもありがとう

ジョン

4

2 に答える 2

1

以下のコードを試してください。次の点にも注意してください:https ://stackoverflow.com/a/6319162/881551

<?php

// I am using a larger expiration to account for server timezone differences.
// http://php.net/manual/en/function.setcookie.php#96813

$cookies = array(
    'clientLastHTimes', 
    'clientLastPTimes', 
    'AkamaiAnalytics_VisitIsPlaying', 
    'AkamaiAnalytics_VisitLastCloseTime'
);

foreach ($cookies as $cookie) {
    if (isset($_COOKIE[$cookie])) {
        $_COOKIE[$cookie] = '';
    }
    setcookie($cookie, "", time() - 90000);
    setcookie($cookie, "", time() - 90000, "/", $_SERVER['HTTP_HOST'], 0); // just in case
}
?>
于 2012-10-31T17:20:00.437 に答える
0

したがって、同様の問題を抱えている可能性のある人にとっては...問題の原因を見つけましたが、Cookieの削除は実際には機能しません。Chromeが問題です。ユーザーが存在する場合、すべてのブラウザがセッションCookieを強制終了しますが、デフォルトではChromeではありません。したがって、特定のサイトのセッションを強制終了するには、Chromeにオプションを追加する必要があります。ちょっとおかしなことですが、これはGoogleがブラウザを閉じたときの状態に復元するために行った選択です。

于 2012-11-01T10:04:44.063 に答える