の形で呼ぶ。
//
// 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);
}
//-->
倉金家ホームページ
趣味の部屋/サーバー構築メモ その4
ftpサーバーとしてvsftpdを設定します。 vsftpdのバージョンは2から3に上がっていますが設定はほとんど同じでした。 |
|
|
強烈な暑さが続いていたがこのごろやっと涼しくなった。 元気が出てきたので続きをやろう。
残るはFTPサーバー vsftpd。 以前のバージョンは2.2.2、今回は3.0.2だが、設定ファイル等見るとたいしたちがいはなさそう。
|
|
SELinux設定
以前SELinuxのアップデートでvsftpdがつながらなくなったことがある。 このときはBoolian値ftpd_use_passive_modeをonしてつながった。 事前にSELinuxのBoolian値を設定。 ~]# setsebool -P ftpd_use_passive_mode on …うっかりディフォルト値がどうなっていたか確認するのを忘れたので semanage boolean -l | grep ftp で確認したらディフォルトはonになっていた。他の値もそのままでいいようだ。 |
|
vsftpd設定
/etc/vsftpd/vsftpd.conf を編集、前回( サーバー構築メモ その3/FTPサーバー vsftpd)と同じ。 /etc/vsftpd/chroot_list 作成。内容は前回と同じ。 あと、以下2つはvsftpd.confで拒否リストの指定になっており、一般的なシステムユーザが記載されている。 /etc/vsftpd/ftpusers /etc/vsftpd/user_list しかしここまでそのまま同じだと手抜き感はまぬがれないので、 ~]# awk '{ match($0, /^[^:]+/, str); print str[0] }' /etc/passwd > /root/Desktop/usrlist.txt で全ユーザのリストを作成、ftpログインを許可するユーザを取り除いてコピーペースト。 いちおうこれでOK。 |
|
起動と起動設定
~]# systemctl start vsftpd.service ~]# systemctl status vsftpd.service vsftpd.service - Vsftpd ftp daemon Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled) Active: active (running) since 水 2015-08-26 13:34:21 JST; 22s ago Process: 18326 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf (code=exited, status=0/SUCCESS) Main PID: 18327 (vsftpd) CGroup: /system.slice/vsftpd.service └─18327 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
8月 26 13:34:21 moonlight.iroribata.net systemd[1]: Starting Vsftpd ftp daemon... 8月 26 13:34:21 moonlight.iroribata.net systemd[1]: Started Vsftpd ftp daemon. ~]#
で問題なく起動したら実際つないで見て確認。 あとは自動起動を設定しておきます。 ~]# systemctl enable vsftpd.service ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service'
|
|
以上で今回のCentOS7サーバーは完了。
今後は現行サーバーのバックアップ及び緊急の際の代替マシンとして使用します。
|
|
|
|