본문 바로가기

반응형

분류 전체보기

(216)
[Network] Proxy Server(프록시 서버) 프록시 서버 기본 개념 프록시 서버란 통신의 주체(사용자의 PC 또는 웹서버) 사이에서 중개인 역할을 하는 하드웨어 또는 소프트웨어 형태의 서버를 말한다. 프록시 서버를 사용하는 이유 사용자가 익명으로 통신할 수 있다. 프록시 서버는 자신의 IP 주소를 따로 가지고 있다. 사용자의 요청을 외부에 최종 전달하는 것은 프록시 서버이기 때문에 외부에서는 사용자의 PC 또는 서버의 실제 IP가 아닌 프록시 서버의 IP가 노출된다. 캐싱을 통한 효율적인 리소스 관리 가능. 프록시 서버는 사용자의 요청을 캐시 형태로 저장한다. 동일한 요청이 다시 들어오면 최초에 했던 것처럼 요청을 처리하지 않고(목적지 서버에 사용자 요청을 전달하고, 응답을 받는 것) 프록시 서버에 있는 캐시를 사용자에게 반환하는 방식으로 요청을 ..
[Network] 서브넷 마스크 32비트의 IP 주소는 두 부분으로 구분된다. 호스트(컴퓨터 또는 프린터나 라우터와 같은 기타 장치)를 식별하는 부분 호스트가 속한 네트워크를 식별하는 부분 그리고 서브넷 마스크의 역할은 IP 주소 어디까지가 네트워크 부분인지 명시하는 것이다. 서브넷 마스크의 특징 서브넷 마스크는 IP 주소처럼 32비트이고, 0과 1이 32개 나열된 형태를 가진다. 1은 네트워크 주소를 나타내며, 0은 호스트의 주소를 나타낸다. 서브넷 마스크는 반드시 연속한 1과 연속한 0의 형태를 가진다. 1과 0이 혼합된 형태는 존재하지 않는다. ex. 11110000(O), 101010(X) IP 주소와 마찬가지로 비트를 나열하면 구분하기 어려우므로 8비트씩 10진수로 변환하여 '.' 으로 구분하여 표시한다. 서브넷 마스크 표시 ..
iptables 설정 방법 리눅스 환경에서 방화벽 설정을 한다는 것은 '어떤 패킷의 출입을 허가/거부 하거나 패킷에 대한 처리를 구체적으로 명시하는 것' 이라고 할 수 있다. 구체적인 패킷 처리는 처리 내용의 집합인 '정책(policy)'의 정의에 따라 결정된다. RHEL, CentOS, Fedora 등의 다양한 리눅스 배포 버전에서는 Firewalld를 기본(default) 방화벽 툴로 제공한다. Firewald는 zone-based(동일한 zone에 포함된 인터페이스 사이에서만 통신할 수 있도록 하는 것) 개념을 기반으로 동작하기 때문에 해당 기능을 제공하지 않는 iptables보다 좀 더 세부적인 통신 설정을 할 수 있다. 따라서 개인의 상황에 맞추어 Firewalld 또는 iptables를 사용하면 된다고 한다. iptab..
아파치 웹서버(httpd)의 시작 페이지 설정 리눅스 환경에서 Apache 웹서버(httpd)의 root 디렉토리를 지정하려면(서버 구동 시 참조하는 디렉토리) /etc/httpd/conf/ 경로의 httpd.conf 파일에서 DocumentRoot 부분을 수정하면 된다. root 경로에서 '어떤' 파일을 참조해야 하는지 지정하려면 어떻게 할까? 마찬가지로 httpd.conf 파일에서 DirectoryIndex 부분을 수정하면 된다. DirectoryIndex는 클라이언트가 디렉토리를 요청할 때 어떤 리소스를 불러올지 참조하는 하나 또는 그 이상의 파일 이름 리스트이다. 일반적으로 파일 이름으로 명시한다. 기본 설정은 아래와 같이 index.html 파일을 참조하도록 설정되어 있다. DirectoryIndex index.html 만약 사용하고 싶지 ..
문서 로드 이전, 이후에 따른 함수 정의 - onload, DOMContentLoaded 문서의 로드 시점, 즉 해당 페이지를 구성하는 모든 리소스가 로드된 이후/이전 상태를 인식하여 특정 함수를 호출하고 싶은 사람들을 위해 onload와 DOMContentLoaded를 제공한다. onload onload는 css, image와 같은 페이지를 구성하는 각종 리소스가 모든 로드된 이후 실행된다. onload 사용법 window.addEventListener('load', (event) => { - 내용 - }); window.onload = (event) => { - 내용 - }; DOMContentLoaded HTML 문서가 로드되자마자 바로 실행된다. css, image와 같은 서브 리소스들의 로드가 완료될 때까지 기다리지 않는다. DOMContentLoaded 사용법 document.ad..
const 키워드로 변수 선언 일반적으로 자바스크립트에서 const는 상수(constant)를 선언하기 위해 사용한다. const의 주요 특징은 다음과 같다. 선언과 동시에 반드시 초기화 작업을 해야 한다. 그렇지 않으면 아래와 같은 문법 에러가 발생한다. 블록 레벨 스코프를 가진다. 한 번 선언한 변수는 재할당이 불가능하다. 출처 http://www.yes24.com/Product/Goods/92742567
var 키워드로 선언된 변수는 함수 레벨 스코프만 인정한다 var 키워드로 선언된 변수는 함수 레벨 스코프만 인정한다. 아래 코드는 var 키워드로 선언된 변수 x 가 함수가 아닌 코드 블록 내부에서 선언된 모습이다. 함수 내부에 선언되지 않았으므로 변수 x는 전역 변수로 인식된다. 따라서 상위에 선언된 변수 x의 값에 또 다른 값이 재할당 되는 상황이 발생한다. var x = '원래 값'; if (true) { var x = '의도치 않게 변경될 수 있는 값'; } console.log(x); // 의도치 않게 변경될 수 있는 값 따라서 if, for, while, try/catch와 같은 코드 블록 내부에 선언되는 변수를 선언 시 var 키워드를 사용해야 한다면 주의해야 한다. 출처 http://www.yes24.com/Product/Goods/92742567
내가 나에게 하는 조언 삶의 지혜 잘 모르는 것에 대해 본인의 의견을 묻는 질문이 들어온다면, 생각나는대로 답하지 말고 잘 모르겠으니 알아보겠다는 식으로 말하는 것이 좋다. 즉석에서 생각나는대로 답한다면 나중에 반드시 후회한다. 적게 말하고 많이 질문하라. 말(馬)은 잘 모르겠는데, 사람은 서울로 보내라는 말(言)은 맞는 말인 것 같다.(큰 세계로 떠나라는 뜻) 자신의 뜻대로 자신을 컨트롤 할 수 있는 사람은 세상에 몇 없다. 그리고 확실히 나는 아니다. 따라서 확실한 계획과 적절한 목표, 그리고 자기 절제가 중요하다. 되고 싶은 무언가가 있는데 지금 당장 될 수 없다면, 그 주변에 계속 어슬렁 거려야 한다. 이는 사람이나 물건 또는 다른 모든 것에 동일하게 적용된다. 비대면 소통이 아무리 편리해도 자신의 인생에 중요한 일은 ..

반응형