「F5」キーを長押ししてしまうと、ApacheのMaxClient数を超えてしまいApacheが動作しなくなる現象が発生しました。
これは、ページ更新時にDBデータの参照を伴うため負荷がかかり、セッションを解放する前に次のセッションが張られることが原因ではないかと推測しております。
この現象を回避するため、
./theme/base/layout
配下のfrontpage.phpとgeneral.phpに以下のJavaScriptを埋め込み「F5」キーを無効と致しました。
ご意見等ございましたら、共有していただけると幸いです。
■動作環境:Moodle2.2.3(Build:20120514)
■修正内容:
<!-- JAVASCRIPT F5 DISABLE -->
<script language="JavaScript"><!--
window.document.onkeydown = function (e)
{
//初期値判定
if (e != undefined)
{
if (e.keyCode == 116)
{
//イベント伝播の中止
e.stopPropagation();
e.preventDefault();
e.keyCode = null;
return false;
}
}else{
if (event.keyCode == 116)
{
event.keyCode = null;
return false;
}
}
}
--></script>
frontpage.phpでは47行目~、general.phpでは62行目~挿入しております。
「F5」キー以外の更新(ブラウザの更新ボタンなど)については、有効のままにしております。
以上、よろしくお願いいたします。