jQuery Datepicker – 특정요일만 선택할 수 있도록 제한

<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<script>
jQuery(function($) {
	$.datepicker.regional['ko'] = {
		closeText : '닫기',
		prevText : '이전달',
		nextText : '다음달',
		currentText : '오늘',
		monthNames : ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
		monthNamesShort : ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
		dayNames : ['일', '월', '화', '수', '목', '금', '토'],
		dayNamesShort : ['일', '월', '화', '수', '목', '금', '토'],
		dayNamesMin : ['일', '월', '화', '수', '목', '금', '토'],
		weekHeader : 'Wk',
		dateFormat : 'yy-mm-dd',
		firstDay : 0,
		isRTL : false,
		showMonthAfterYear : true,
		yearSuffix : '년'
	};

	$.datepicker.setDefaults($.datepicker.regional['ko']);
});

function onlyMonday(date){
	var day = date.getDay();
	return [(day == 1), ''];
};

$(document).ready(function(){
	$(".datepicker").datepicker({
		beforeShowDay: onlyMonday
	});
});
</script>

라오스 방비엥

주말을 끼워서 짧게 다녀온 라오스

비엔티안에 도착하자마자 방비엥으로 셔틀타고 날라간다
그리고 숙소에서 자면 하루가..

짥게 잘 놀았고, 다음에 간다면 루앙프라방을 방문하고 싶네

스마일비치
존맛탱 인정
블루라군, 저 높이에서 다이빙도 꽤나 무서웠다
TCK 짚라인
아침일찍 로컬시장이 열린다
볼거없는 야시장
튜빙하다 중간에 있는 펍에서 외국애들이랑 게임하면서 술마시기
외국애들 진짜 잘논다
음주튜빙중
갤럭시 S10e는 방수라더니, 물먹고 사망

Apache Traffic Server 시작오류

Apache Traffic Server를 apt로 설치하고

systemctl start trafficserver로 시작하려면 정상적으로 시작을 하지 않는 경우가 있다.

 

이런경우 아래처럼 디렉토리를 생성시켜주면 정상적으로 시작이 된다

$ mkdir /var/run/trafficserver

$ chown trafficserver:trafficserver /var/run/trafficserver

 

systemctl status trafficserver로 확인해보면

/var/run/trafficserver 를 생성시켜주지 못해서 오류가 나면서 종료되는 문제이다.

 

서버 시작시 서비스가 실행되도록 하려면 아래처럼 한다

$ systemctl enable trafficserver

 

이렇게 시작 서비스에 등록을 하더라도 재부팅하면 /var/run/trafficserver 디렉토리가 없어지면서

서비스가 정상적으로 시작되지 않는다.

 

서비스 시작 스크립트를 수정해서 해결한다

$ vim /lib/systemd/system/trafficserver.service

 

아래코드를 삽입해준다.

서비스 시작전에 실행하는 커맨드를 이용해서 폴더를 생성시켜준다.

ExecStartPre=/bin/mkdir /var/run/trafficserver
ExecStartPre=/bin/chown trafficserver:trafficserver /var/run/trafficserver

 

전체파일내용은 아래와 같다

[Unit]
Description=Apache Traffic Server is a fast, scalable and extensible caching proxy server.
Documentation=man:traffic_server(8)
After=network.target

[Service]
Type=simple
EnvironmentFile=-/etc/default/trafficserver
PIDFile=/var/run/trafficserver/cop.pid
ExecStartPre=/bin/mkdir /var/run/trafficserver
ExecStartPre=/bin/chown trafficserver:trafficserver /var/run/trafficserver
ExecStart=/usr/bin/traffic_cop $TC_DAEMON_ARGS
ExecReload=/usr/bin/traffic_ctl config reload

[Install]
WantedBy=multi-user.target

우분투 12.04 iptables + geoip

우분투 12.04에서 iptables와 geoip를 이용해서 국가단위로 접근을 제한하는 방법을 안내합니다.

 

설치

필요한 패키지 설치

# sudo apt-get install xtables-addons-common
# sudo apt-get install libtext-csv-xs-perl

 

GEOIP 데이터베이스 다운로드

# sudo /usr/lib/xtables-addons/xt_geoip_dl

 

다운로드한 데이터베이스 압축해제

# sudo mkdir /usr/share/xt_geoip
# sudo /usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip *.csv

 

사용방법

특정 국가만 차단

# iptables -A INPUT -m geoip –src-cc CN,IN,RU,JP -j DROP

 

특정 국가를 제외한 나머지 차단

# iptables -A INPUT -m geoip ! –src-cc KR -j DROP

 

오류처리

상황

-m geoip 사용시 아래와 같은 오류발생

iptables: No chain/target/match by that name.

 

처리

xtables-addons-1.47.1 소스코드 다운로드

최신버전인 3.x는 우분투 12.04의 커널버전이 낮아서 사용할 수 없으니 1.x  버전을 사용해야 한다

 

# wget https://sourceforge.net/projects/xtables-addons/files/Xtables-addons/xtables-addons-1.47.1.tar.xz/download
# xz -d xtables-addons-1.47.1.tar.xz
# tar xf xtables-addons-1.47.1.tar
# cd xtables-addons-1.47
# ./configure
# make && make install

 

확인

아래명령을 실행해서 ‘geoip’ 가 있는지 확인

#cat /proc/net/ip_tables_matches

conntrack
conntrack
conntrack
state
geoip
udplite
udp
tcp
multiport
icmp

 

Asterisk 수신거부 코드 – DB연동

asterisk 11 버전에서 특정번호를 수신거부하는 코드입니다.

수신거부하는 번호를 DB테이블에 저장하고 관리합니다.

 

테이블스키마

CREATE TABLE `ban` (
`phone` VARCHAR(32) NOT NULL COMMENT '전화번호',
`reg_date` DATETIME NOT NULL COMMENT '등록일',
INDEX `phone` (`phone`)
)
COMMENT='수신거부 전화번호'
COLLATE='utf8_general_ci'
ENGINE=MyISAM;

 

extensions.conf

[inbound]
exten => 07010002000,1,Answer
exten => 07010002000,n,NoOp("caller id: ${CALLERID(number)}")
exten => 07010002000,n,MYSQL(Connect connid 호스트 유저 비밀번호 데이터베이스명)
exten => 07010002000,n,MYSQL(Query resultid ${connid} SELECT COUNT(*) AS cnt_blockcaller FROM ban WHERE phone='${CALLERID(number)}')
exten => 07010002000,n,MYSQL(Fetch fetchid ${resultid} cnt_blockcaller)
exten => 07010002000,n,MYSQL(Clear ${resultid})
exten => 07010002000,n,MYSQL(Disconnect ${connid});

exten => 07010002000,n,GotoIf($["${cnt_blockcaller}" != "0"]?inbound,07010002000,blockcaller)

.
.
.

exten => 07010002000,n(blockcaller),NoOp("blockcaller!!!")
exten => 07010002000,n,Hangup()

 

 

교토 첫째날 1/2

오사카 여행 두번째날 오전일찍
도톤보리에서 후시미이나리 신사로 이동한다.

도톤보리 숙소에서 후시미이나리까지 이동은
지하철이 가장 편하고 그렇게 안내를 한다.

신사이바시나 난바에서 요도야바시역으로 간다.
일본은 환승개념이 없기에 일단 역에서 나간 다음
게이한본선을 타기위해 붉은 라인을 따라간다.

자판기에서 400엔을 넣고 내려가보면
게이한 본선(붉은색)이 있다.
특급, 완행이 있는데 결국 같은 곳을 간다.
(우리나라 지하철 직통같은 개념인 듯?)

주의할 것이 있다면 특급의 경우 단바바시에서 완행으로 갈아타야 하고
완행을 탔다면 그냥 후시미이나리역까지 쭉 가면 된다.

오전 9시에 도착했는데도 사람이 꽤나 많았다.
7시까지 오라고 했는데 후회가..
정상까지 찍고 내려오면 두시간 소요되니 참고하자

후시미이나리신사는 다른말로 ‘여우신사’라고 불린다.

오사카 단풍여행

11월중순부터 12월초의 오사카-교토는 단풍이 절경이라하여 여행을 가보았다.

오전 8시 비행기여서 새벽에 출발

인천공항 사진은 건너뛰고 바로 간사이 국제공항 도착

라피트 왕복권을 한국에서 미리 구매해서 왔기에

HIS를 찾아 교환권을 구해야 한다.

터미널을 나오자마자 왼쪽에는 스타벅스가 있고,

오른쪽으로 30미터쯤 가면 HIS의 파란부스가 보이니 여기서 QR코드를 보여주고 교환하자.

교환권은 아래

교환권을 받아서 2층으로 올라가서 기차.. 트래인으로 표기되어 있던가??

가보면 승차권을 구매하는 곳이 있는데

오른쪽은 바로 승차권을 구매하는 곳 왼쪽은 교환권으로 승차권을 받는 곳이니

왼쪽에 보여주면 된다.

라피트 특급은 30분마다 있고 시간표를 직원이 확인해 준다.

이렇게 생긴놈을 타면 된다

좌석은 지정좌석이다

난카이 난바역은 금방이다

오늘은 도착해보니 교통을 통제하고 마라톤 대회가 있었다.

도톤보리에 있는 돈키호테

그 옆에 있는 이치란 라멘..

줄이 어마어마 하다. 생각보다 맛있는지는 모르겠더라

대충 둘러보고 오사카성으로 이동

오사카 주유패스 1일권을 이용한다

천수각이 보이는군..

아래 보이는 다리가 유명한 다리인데, “고구라구바시” 라고 구글맵이 알려줬다.

주유패스로 저 금빛나는 배를 탈 수 있는 것 같았는데

시간이 없어서 패스

천수각 입장은 주유패스로 해결이 가능하다

해질무렵 우메다역으로 이동

다시 걸어서 공중정원에 들어갔다.

역시나 이곳도 주유패스로 입장

크리스마스 전이라서 그런지 엄청 큰 트리가..

도톤보리 야경을 구경하러 이동

도톤보리에서 제일 유명한 아저씨..