2018년 9월 13일 목요일

NGINX 특정 URL BLOCK 설정

10년도 전에 오픈소스 게시판을 이용해 만들었던 홈페이지를 새롭게 리뉴얼하니,
예전 URL로 요청이 많아서, 로그가 너무 많이 쌓였다.

nginx 로그를 열어보니, *.php 형태로 들어오는 request가 너무 많아서 로그가 너무 빨리 쌓였고,
별건 아니더라도 서버에 부담도 있었을 것이다.

아마도 오픈소스 게시판을 이용한 홈페이지가 해킹에 이용됐던 것 같다.


검색해보니, nginx 설정에서 정규식 매칭을 통해 처리가 가능하다.
/etc/nginx/sites-avaliable/(서비스).conf 파일 내에 server 항목 안에, 아래 설정을 추가하고,

    location ~ \.php($|/) {
        deny all;
    }

브라우저에서 php로 끝나는 url을 호출하니,


확인해보니, 어플리케이션 로그도 많이 줄었다.

시간 지나면 자연히 줄었겠지만, 속이 시원하다.






2018년 9월 12일 수요일

Ubuntu Nginx 로그파일 내용 비우기

nginx 로 웹서버를 오래 운영하니, 로그파일이 커져서 열기가 힘들다.

logrotate 를 설정하는게 답이겠지만,

쉽게 로그파일 내용을 삭제하려 했더니, 서비스 중에 권한 문제로 파일 삭제가 안된다.

nginx 중단하면 쉽겠지만, 중단없이 하기 위해 검색 후, 테스트해보니

truncate 명령으로 잘 된다.


[우선 로그 파일용량 확인]
$ du -sh *


[필요할 경우, 로그 백업]
$ cp nginx.access.log nginx.access_bak.log


[로그파일 비우기]
$ truncate -s 0 nginx.access.log

2018년 9월 4일 화요일

카카오 스토리 아이콘 컬러값 HEX/RGB


CSS 에서 만들때 사용하려고 저장해둠

카카오스토리 공유버튼 컬러

HEX : #F9E000
RGB : 249, 224, 0
이미지 다운로드 : https://developers.kakao.com/buttons





xe icon 으로. ( https://xpressengine.github.io/XEIcon/ )

<i class="xi-kakaostory" style="background-color: #f9e000; border-radius: 6px; color: white; font-size: 50px; padding: 10px;"/>카카오스토리

카카오스토리

2018년 8월 17일 금요일

리눅스에서 한글 파일명 서버 이전 후, 파일을 찾을 수 없을 때

10년이 넘은 홈페이지 자료를 마이그레이션 하던 중,
파일명이 한글인 첨부파일들을 새로운 서버로 이전하니,
nginx 에서 파일을 불러오지 못한다. (물론 find 에서도 못찾을 때가 있다)

백업은 호스팅 서버에서 ftp로 mac 에 다운 받은 후,
mac에서 ubuntu 서버로 파일을 전송했다.

처음부터 압축해서 옮겼으면 별 문제 없었을 텐데.
많지 않아보여서 파일 전체를 받았더니, 머리가 아프다.


검색을 해보니, 파일명도 character 형식을 변경하는 방법(convmv)이 있어,
적용해보니 잘 된다.
처음에도 형식은 utf-8 이었고, ls 에서 한글 파일명은 잘 표시하지만, 파일을 찾을 수 없는 경우가 있었다.
그래서 강제로 euc-kr 로 한번 변경 후, 다시 utf-8로 변경하니, 잘 연결되어 해결 ^^


$ ls
(한글 파일명은 제대로 나오지만 파일을 찾을 수 없음)

$ convmv -t utf-8 -f euc-kr --notest ./*
(파일명을 utf-8 에서 euc-kr로 변경)

$ ls
(한글 파일명이 깨져보임)

$ convmv -f euc-kr -t utf-8 --notest ./*
(파일명을 euc-kr 에서 utf-8로 변경)

$ ls
(한글 파일명도 잘 보임, nginx로 파일 연결 잘됨. find도 파일 잘 찾음)