ElasticSearch - Content-Type header [application/x-www-form-urlencoded] is not supported

curl 에서 아래와 같은 옵션 추가 -H 'Content-Type: application/json'

sendmail 설정

내가 갖고 있는 도메인(hostway.co.kr)으로 내가 소유한 서버에서 메일을 보내고 받을 수 있게 설정해 보자. 제일먼저 확인해야 할 것은 도메인이 사용하는 네임서버의 zone 파일에서 mx 레코드가 내 서버의 ip로 연결되어 있어야 한다. hostway.co.kr 도메인의 MX레코드가 아래와 같이 설정 되어있다.                    MX      10 mail mail            A       192.168.0.16 그럼 이제부터 192.168.0.16의 서버에서 xxx@hostway.co.kr의 주소로 들어오는 메일을 받을수 있게 설정해 보자. * 받는 메일서버 설정 메일을 받기 위해서는 우선 pop3 데몬이 떠 있어야 한다. xinetd.d 디렉토리내에 ipop3d 를 사용한다면 별 어려움 없이 pop3데몬을 띄울수 있다.   기본적으로 제공되는 ipop3 데몬을 띄우기 위해서 /etc/xinetd.d/ipop3d 파일을 편집기로 열고 disable = yes 부분만 disable = no로 변경시키고 xinetd 데몬을 리스타트 하면 된다.   1. /etc/xinetd.d/ipop3d 파일 수정. [root@localhost root]# cat /etc/xinetd.d/ipop3d service pop3 {         disable = no         socket_type ...

Python requests 모듈 간단 정리

이미지
Python에서 HTTP 요청을 보내는 모듈인 requests를 간단하게 정리하고자 한다. 0. 기본적인 사용 방법 import requests URL = 'http://www.tistory.com' response = requests.get(URL) response.status_code response.text 웹브라우져에서 티스토리를 접속한 것과 똑같은 이야기이다. www.tistory.com 이라는 주소로 GET 요청(request)를 보냈고 서버에서는 그 요청을 받아 뭔가를 처리한 후 요청자인 나에게 응답(response)를 줬다. 우선 그 응답은 200 상태코드와 함께 왔다. 이는 티스토리 서버에서 잘 처리되어서 정상적인 응답을 보내줬다는 OK 싸인을 의미한다. 그리고 응답의 내용은? 보시다시피 HTML 코드. 1. GET 요청할 때 parameter 전달법 params = {'param1': 'value1', 'param2': 'value'} res = requests.get(URL, params=params) 응답 객체인  res 를 통해서 내가 실제로 던진 URL이 뭔지 확인해보았다. 내가 준 URL과 파라미터를 requests 모듈이 엮어서 적절한 새로운 요청을 만든 것이다. 내가 직접 URL을 저렇게 타이핑하는 것보다 파라미터를 딕셔너리 형식으로 정리하고 requests 모듈에 던져주는 것이 훨씬 좋다고 생각한다. 2. POST 요청할 때 data 전달법 위의 내용과 같다,  params  대신  data 라는 이름으로 주면 된다. data = {'param1': 'value1', 'param2': 'value'} res = requests.post(URL, data=data) 조금 더 복잡한 구조로 POST 요청을 해야 할 때가 있다. 이럴 때는 위의 방법처럼 순진하게 주면...

Tomcat SSL 연동

CentOS6.4 , Apahe2.x + Tomcat연동시 SSL설정 Apache에서 mod_ssl가 깔린 상태에서 아래와 같이 /etc/httpd/conf.d/ssl.conf 설정 <VirtualHost *:443> # General setup for the virtual host, inherited from global configuration DocumentRoot "/usr/local/webapps/WebContent" ServerName localhost JkUnmount /images/* ajp13 JkUnmount /script/* ajp13 JkUnmount /css/* ajp13 JkMount /* ajp13 ErrorLog logs/ssl_error_log TransferLog logs/ssl_access_log LogLevel warn SSLEngine on SSLProtocol all -SSLv2 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW SSLCertificateFile /usr/local/webapps/openssl/wildcard.jungnang.seoul.kr.pem SSLCertificateKeyFile /usr/local/webapps/openssl/wildcard.key SSLCertificateChainFile /usr/local/webapps/openssl/wildcard_caChain.pem SSLCACertificateFile /usr/local/webapps/openssl/wildcard_ca.pem ........ </VirtualHost>

linux umask

umask란? 주어진 콘테스트에서 새로 만들어진 파일과 디렉토리 퍼미션에 적용될 마스크를 지정해주는 지시자이다. 새로운 디렉토리와 파일들이 쓰기 권한을 가진 그룹이나 전체가 되는 것을 막기 위해 Umask를 합리적인 표준값인 002, 007, 020, 070, 022등으로 설정한다. 파일이라는 것은 원래 목적이 읽고 쓰는 것이다. 그러므로 일반적으로 실행을 하는 것은 드물다. 그러므로 값을 모두 짝수로 지정하게 되는 것이다. 파일의 풀 퍼미션은 666이며, 디렉토리의 풀 퍼미션은 777이다. 계산을 하면  파일 퍼미션 디렉토리 퍼미션    666  -022 ------    644    777  -022 ------   755  연습을 위해서 umask를 입력하여 본다. 그러면 현재 설정된 값을 확인 할 수 있다.  touch ddd 를 해서 ddd란 파일을 생성 후 ls -l ddd를 통하여 확인을 하면 디폴트로 644가 된다. 디렉토리를 확인하고 싶다면 mkdir kbs라고 입력하여 디렉토리 생성 후 ls -l kbs를 통하여 확인을 하면 디폴트로 755가 되어 있다.  이제 한번 바꾸어 보쟈.  [root@localhost ~]#  grep umask /etc/* /etc/bashrc:    umask 002 /etc/bashrc:    umask 022 /etc/csh.cshrc: umask 022 /etc/csh.cshrc: umask 002 /etc/ltrace.conf:octal umask(octal); /etc/ltrace.conf:octal SYS_umask(octal); [root@localhost ~]#  umask 0022 ...

리눅스 free memory

운영중에 Free Memory size가 부족하다고 하여 top 명령어로 살펴보았다. top - 13:52:48 up 60 days, 4:05, 2 users, load average: 0.09, 0.34, 0.46 Tasks: 186 total, 1 running, 185 sleeping, 0 stopped, 0 zombie Cpu(s): 1.8%us, 0.2%sy, 0.0%ni, 97.8%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 47185920k total, 47125908k used, 60012k free, 1250664k buffers Swap: 10485752k total, 120k used, 10485632k free, 30877100k cached - Mem: 60,012 free 로 나온 것을 보아 헉 현재 60Mbytes 밖에 여유가 없다니! 과연 그럴까? - Linux의 경우 real free = free + cached of Swap 로 봐야 한다. free -gt  명령을 수행해 보면, 여유 메모리는 30G가 됩니다. 따라서  free 0 로 나오지만 buffers + cached 30G 의 free memory 여유가 있다 고 보면 됩니다. [jboss@hostname ~]$ free -gt total used free shared buffers cached Mem: 45 44  0  0 1 29 -/+ buffers/cache: 14  30 Swap: 9 0 9 Total: 54 44 10 cashed는 여유메모리로 보시면 됩니다. 리눅스 시스템은 파일형태로 관리되는 운영체제이기때문에 여유메모리를 캐쉬파일로 표현되고 있습니다. 또한 스왑이란 실제 메모리 캐쉬메모리까지 모두 사용해서,부족할때 하드 일부분을 메모리 처럼 가져다 쓸때 사용되는 메모리를 말합니다. free -gt...