の形で呼ぶ。
//
// anchor_idはフレームを使う場合最低限各フレームごとに設定。お互い他のフレームを書換えたときにへんな干渉をさけるため。
// その他ページの種別毎などで変えてもよいが、あまり小分けにするとcookieが増える。
// 同じanchor_idで保存されるcookieは1セットのみ。でも単独ページ表示のサイトなら概ねこれで充分。
anchor_id = "anc_main";
noanchor = false; // bodyにanchorをしかけたときなど場合によって一時無効にするためのフラグ。
// アンカーの記憶。
function anchor_save(object_id, page_id) {
if(noanchor) { anchor_erase(); return; }
get_scroll();
setcookie(anchor_id+"_pid", page_id, 0);
setcookie(anchor_id+"_st", scroll_top, 0);
setcookie(anchor_id+"_sl", scroll_left, 0);
if(object_id) {
object_top = scroll_top + get_object_top(object_id);
object_left = scroll_left + get_object_left(object_id);
setcookie(anchor_id+"_oid", object_id, 0);
setcookie(anchor_id+"_ot", object_top, 0);
setcookie(anchor_id+"_ol", object_left, 0);
} else {
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
}
// アンカーの適用。
function anchor_apply(page_id) {
if((saved_page_id = getcookie(anchor_id+"_pid")) && page_id != saved_page_id) { return; }
get_scroll();
if((anchor_st = getcookie(anchor_id+"_st")) != "" && (anchor_sl = getcookie(anchor_id+"_sl")) != "") {
anchor_st = parseInt(anchor_st);
anchor_sl = parseInt(anchor_sl);
} else {
anchor_st = scroll_top;
anchor_sl = scroll_left;
}
if((object_id = getcookie(anchor_id+"_oid"))
&& (anchor_ot = getcookie(anchor_id+"_ot")) != ""
&& (anchor_ol = getcookie(anchor_id+"_ol")) != "") {
offset_top = (scroll_top + get_object_top(object_id)) - parseInt(anchor_ot);
offset_left = (scroll_left + get_object_left(object_id)) - parseInt(anchor_ol);
} else {
offset_top = offset_left = 0;
}
window.scrollTo(anchor_sl + offset_left, anchor_st + offset_top);
}
// アンカー消去。あえてとっておく必要がなければanchor_apply()後すぐ消去が望ましい。
function anchor_erase() {
setcookie(anchor_id+"_pid", "", -1);
setcookie(anchor_id+"_st", "", -1);
setcookie(anchor_id+"_sl", "", -1);
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
//-->
倉金家ホームページ
趣味の部屋/サーバー構築メモ その3/仮想マシン
|
|
サーバー構築と入替えが完了し一段落したので今度は仮想マシンでちょっと遊んでみます。 実をいうとサーバーのテストインストールの時にちょっと仮想マシンをテストしてみました。その結果思ったより簡単に仮想マシンは作成・稼働・削除できるということがわかり、必要に応じてやればいいやと思ったのでサーバー構築の際に特に意識はしませんでした。
以下事前にCentOS6とWindows7をテストしてみた概要。
|
CentOS6 -- OK
ダウンロードサイトよりインストール用の.isoイメージファイルをダウンロード。 ftp://ftp.riken.jp/Linux/centos/6.4/isos/x86_64/ から CentOS-6.4-x86_64-bin-DVD1.iso CentOS-6.4-x86_64-bin-DVD1to2.torrent CentOS-6.4-x86_64-bin-DVD2.iso ただDVD2は追加選択用のパッケージでインストールにはDVD1だけあればいいとの話もあり。
/home/centos64iso/ というフォルダでも作ってその中に入れておく。 /root/ フォルダ内だとインストール時にアクセスが許可されず失敗する。 たぶんSELinuxが邪魔をしてのか安全のためそうしているんだろう。
GUIの仮想マシンマネージャーを使って上記イメージファイルを指定しインストールを開始。 通常のDVDからのインストールとほとんど変わりません。 しいて言えば、インストールする仮想デバイスの設定にちょっぴり注意が必要なことくらい。 完了すると仮想マシンモニタ画面の中で再起動し、普通のコンピュータと全く同じに操作できます。画面サイズは1024x768です。 ネットワークもネットワークアイコンをクリックして自動接続でOK。 ざっと動かした感じでは特に問題はなさそう。
|
Windows7 -- 失敗
PCに付属のリカバリDVDを使って仮想マシンにWindows7をインストールしようと試みました。 最初DVDデバイスを指定してやったらうまくいかない。 途中で再起動要求が入り、再起動すると以後継続しない。DVDから読まなくなってしまうようだ。
で、DVDイメージをCentos6のときと同じようにファイルシステムにコピー。 # dd if=/dev/cdrom of=/home/win7.iso CentOS6と同様にインストールを開始しましたが、このコンピュータにはインストールできませんとなり、見事に失敗。 リカバリ用DVDなのでマシンそのものが本来のものかどうかをチェックしているようで、仮想マシンは別ものとみなされるようです。残念。...あたりまえといえばあたりまえかな。
|
とりあえずこんなところで検討は一旦休止。 サーバーが無事稼働したらまたあらためて仮想マシンを試してみることにしました。
|
|
|