2018년 8월 12일 - 월곶 실외 물놀이장
2018년 8월 4일 - 남양주 실외 수영장에서
# nginx 에서 index.html request_uri 삭제하기 server { server_name domain.com; if ( $request_uri ~ "/index.(php|html?)" ) { rewrite ^ /$1 permanent; } }
2018년 8월 일상
sendmail 큐에 쌓여있는 메일 바로 발송하기 여러 이류로 인해 발송되지 못하고 큐에 쌓인경우, 서버자원을 점유하여 부하를 발생시킬 수 있다. 이런 경우,큐에 쌓인 메일을 바로 발송할 수 있다. /usr/sbin/sendmail -oQ/var/spool/mqueue -oT1d -q -v
2018년 7월 8일 - 낙산사 & 낙산해수욕장
2018년 7월 7일 - 제부도 꽃게잡기
자원을 삭제할 때는 ipcrm 라는 명령어 # 필요성 특정 프로세스가 가지고 있던 자원들을 해제하지 않으면서 생긴 문제를 해결하기 위함이다. 예를 들어 DBMS에 대해서 kill을 했지만, IPC 자원을 해제않는 경우를 확인할 수 있고, 이를 통해서 자원이 낭비되고, 이런식으로 계속 문제가 되면, 시스템 전체에 영향을 미칠 수 있기 때문이다. 예를 들어 apache 데몬의 경우 restart를 했는데, 다음과 같이 세마포를 계속 가지고 있을 수 있다. ------ Semaphore Arrays -------- key semid owner perms nsems 0x00000000 13434880 www 600 1 0x00000000 13467649 www 600 1 0x00000000 13500418 www 600 1 0x00000000 13533187 www 600 1 0x00000000 13565956 www 600 1 ipcs -s |sed "/em/d" | for i in `awk '{print $2}'` ; do ipcrm sem $i ;
# IPC(Inter Process Communication)는 message queue( q), shared mem ( m), semaphore (s)의 자원의 현황을 알려준다. # ipcs - provide information on ipc facilities # SYNOPSIS ipcs [ -asmq ] [ -tclup ] ipcs [ -smq ] -i id ipcs -h # IPC 모든 타입에 대한 리소스 정보 출력 # ====================================================================== # # ipcs ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 3407872 nobody 600 328 11 dest 0x00000000 3440641 root 600 524288 11 dest 0x00000000 1998850 root 600 184324 11 dest
nginx rewirte, redirect 주소변환 설정모음 nginx 에서 주소변경 nginx 에서 주소변환 # domain.com 으로 접속 시 newdomain.com 으로 리다이렉토 server { server_name domain.com; return 301 http://www.newdomain.com$request_uri; } #domain.com/change/view.php?no=1000으로 접속 시domain.com/changed/article.php?art_no=1000으로 변환 server { server_name domain.com; location ~* ^/change/(.*)$ { rewrite ^/change/(.*)$ http://domain.com/changed/$1 permanent; break; } #domain.com/~~~으로 접속 시 newdomain.com/~~~으로 변환 server { server_name domain.com; location ~* ^(.*)$ { rewrite ^(.*)$ http://www.newdomain.com$1 permanent; break; } #domain