1

WebサイトでFBJavascriptSDKを使用していますが、channel.phpファイルによってコンテンツが更新されないようになっているようです。channel.phpファイルには次のものがあります。

<?php
 $cache_expire = 60*60*24*365;
 header("Pragma: public");
 header("Cache-Control: maxage=".$cache_expire);
 header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$cache_expire) . ' GMT');
?> 
<script type="text/javascript" src="//connect.facebook.net/en_US/all.js"></script>

SDKの使用が必要なWebサイトの各ページには、開始タグのすぐ下に次のものが含まれています。

<div id="fb-root"></div>
<script type="text/javascript">
  window.fbAsyncInit = function() {
    FB.init({
      appId  : '<?php echo $cfg['fb_app_id']; ?>',
      status : true, // check login status
      cookie : true, // enable cookies to allow the server to access the session
      xfbml  : true,  // parse XFBML
      channelUrl  : '<?php echo $cfg['http_prefix'].$cfg['domain_name'].'/'; ?>channel.php', // Custom Channel URL
      oauth : true //enables OAuth 2.0
    });
  };

  (function() {
    var e = document.createElement('script');
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
    e.async = true;
    document.getElementById('fb-root').appendChild(e);
  }());
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#appId=<?php echo $cfg['fb_app_id']; ?>&xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>

このファイルをブラウザのキャッシュで「古くなった」と呼ぶページのようです。私は1日不在でしたが、ページにシフトクリックしてリロードするまで、ページに戻っても古いコンテンツが含まれていました。何かご意見は?

4

0 に答える 0