Nginx HTTP Server 한국어판 [아파치를 대체할 강력한 차세대 HTTP 서버 엔진엑스]
- 원서명Nginx HTTP Server (ISBN 9781849510868)
- 지은이끌레망 네델꾸
- 옮긴이김득권
- ISBN : 9788960772373
- 30,000원
- 2011년 10월 12일 펴냄 (절판)
- 페이퍼백 | 428쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 오픈소스 프로그래밍, 웹 프로페셔널
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
엔진엑스(Nginx)는 비동기 소켓을 사용하는 빠르고 강력한 HTTP 서버로, 아파치 웹 서버를 대체할 대안으로 급부상 중이다. 이 책은 기초적인 리눅스 커맨드라인 인터페이스에서 시작해 엔진엑스 소스코드를 다운로드, 빌드, 설치하는 과정뿐만 아니라 주요 모듈과 모든 지시어의 상세한 설명, 구문 용례, 색인 목록까지 망라함으로써 엔진엑스 관리자의 필독서로 활용할 수 있다. 또한 엔진엑스 자체에 관한 설명 외에도 엔진엑스와 기존 HTTP 서버를 병행해 사용하는 법, FastCGI를 통해 애플리케이션과 연동하는 법, 아파치에서 엔진엑스로 서버를 완전히 교체하기 위한 마이그레이션 가이드 등이 함께 제공되므로 아파치의 문제점을 극복할 대안을 찾는 모든 웹 관리자에게 꼭 필요한 책이다.
[ 소개 ]
엔진엑스는 트래픽이 많은 웹사이트를 위해 네트워크 확장성을 주목적으로 설계한 경량 HTTP 서버다. 고속 인터넷의 발명으로 짧은 로딩 시간과 빠른 전송률은 필수 조건이 되었다. 웹사이트의 전체 속도를 향상시키기 위해 프리 오픈소스 솔루션인 엔진엑스를 아파치 같은 기존 웹 서버와 완전히 교체하거나 현재 구축된 인프라 앞에 설치해 사용할 수 있다. 하지만 엔진엑스로 이주하는 데는 안내서가 필요하다.
이 책은 상용 서비스 상황에 맞게 다양한 형태로 엔진엑스를 구성할 수 있게 상세한 안내를 제공한다. FastCGI를 통해 애플리케이션을 엔진엑스와 연동시키는 방법뿐만 아니라 엔진엑스를 단독 서버나 리버스 프록시로 활용하는 법도 다룬다. 또한 이 책은 엔진엑스에 관한 모든 지시어를 수록한 완벽한 참고서로서 웹사이트 환경 설정과 유지 보수의 모든 과정에서 가장 친절한 벗이 될 것이다.
[ 이 책에서 다루는 내용 ]
■ 엔진엑스 소스코드와 관련 파일들의 다운로드와 빌드
■ 엔진엑스의 기본적인 환경 설정, 구문, 구조, 의미론
■ 가상 호스트 환경 설정
■ 핵심 모듈의 활성화, 환경 설정, 사용법
■ 엔진엑스 재작성 모듈을 이용한 고급 재작성 규칙
■ FastCGI를 통한 PHP, 파이썬과 엔진엑스의 연동
■ 엔진엑스를 기존 HTTP 서버의 프론트엔드로 사용하는 법
■ 아파치를 엔진엑스로 교체하는 전 과정
■ 아파치 재작성 규칙을 엔진엑스에 이식하는 세 가지 실제 사례
■ 상세한 지시어 목록을 참조해 자신의 환경 설정을 찾는 법
■ 문제 해결 방법
[ 이 책의 대상 독자 ]
이 책은 엔진엑스의 초기 설치 단계부터 고급 주제까지 모든 내용을 다루기 때문에 기존 웹 서버를 교체하려는 경우든 아니면 이미 실행 중인 애플리케이션과 연동해 사용할 새로운 도구를 물색하는 경우든 인프라 최적화 솔루션에 관심이 있는 웹 관리자라면 모두에게 적합한 책이다. 특히 아파치 웹서버에 실망한 관리자, 방문자, 운영체제에게는 꼭 필요한 책이다.
[ 이 책의 구성 ]
1장, 작업 환경 준비에서는 이 책에서 사용할 리눅스 커맨드라인 작업 환경을 만드는 기본적인 방법을 제공한다.
2장, 엔진엑스의 다운로드와 설치에서는 선행 요소와 엔진엑스를 다운로드해 설치하는 과정까지 안내한다.
3장, 엔진엑스 기본 환경 설정에서는 엔진엑스의 기본 환경 설정과 코어 모듈의 설정에 관해 설명한다.
4장, HTTP 환경 설정에서는 대부분의 주요 환경 설정 블록과 지시어가 들어 있는 HTTP 코어 모듈을 자세히 다룬다.
5장, 모듈 환경 설정에서는 재작성 모듈과 SSI 모듈을 포함한 엔진엑스의 여러 가지 필수 모듈을 공부한다.
6장, 엔진엑스와 PHP, 파이썬의 연동에서는 FastCGI를 통해 PHP나 그 밖의 서드파티 애플리케이션을 엔진엑스와 연동시키는 방법을 설명한다(동적 웹사이트 서비스에 관심 있는 경우).
7장, 아파치와 엔진엑스의 병용에서는 엔진엑스를 리버스 프록시 서버로 구성해 아파치와 함께 사용하는 법을 제시한다.
8장, 아파치, 엔진엑스로 이전에서는 아파치를 엔진엑스로 완전히 교체하는 상세한 안내서를 제공한다.
부록 A, 지시어 사전에서는 모든 환경 설정 지시어를 간단한 설명과 함께 알파벳 순서로 정리한 목록을 제공한다. 각 모듈 지시어를 자세히 다룬 장 번호와 절 제목도 목록에 포함된다.
부록 B, 모듈 레퍼런스에서는 현재 사용할 수 있는 모든 모듈의 목록을 제공한다.
부록 C, 문제 해결에서는 엔진엑스 환경 설정 시에 관리자들이 가장 흔히 겪는 문제를 다룬다.
[ 소개 ]
엔진엑스는 트래픽이 많은 웹사이트를 위해 네트워크 확장성을 주목적으로 설계한 경량 HTTP 서버다. 고속 인터넷의 발명으로 짧은 로딩 시간과 빠른 전송률은 필수 조건이 되었다. 웹사이트의 전체 속도를 향상시키기 위해 프리 오픈소스 솔루션인 엔진엑스를 아파치 같은 기존 웹 서버와 완전히 교체하거나 현재 구축된 인프라 앞에 설치해 사용할 수 있다. 하지만 엔진엑스로 이주하는 데는 안내서가 필요하다.
이 책은 상용 서비스 상황에 맞게 다양한 형태로 엔진엑스를 구성할 수 있게 상세한 안내를 제공한다. FastCGI를 통해 애플리케이션을 엔진엑스와 연동시키는 방법뿐만 아니라 엔진엑스를 단독 서버나 리버스 프록시로 활용하는 법도 다룬다. 또한 이 책은 엔진엑스에 관한 모든 지시어를 수록한 완벽한 참고서로서 웹사이트 환경 설정과 유지 보수의 모든 과정에서 가장 친절한 벗이 될 것이다.
[ 이 책에서 다루는 내용 ]
■ 엔진엑스 소스코드와 관련 파일들의 다운로드와 빌드
■ 엔진엑스의 기본적인 환경 설정, 구문, 구조, 의미론
■ 가상 호스트 환경 설정
■ 핵심 모듈의 활성화, 환경 설정, 사용법
■ 엔진엑스 재작성 모듈을 이용한 고급 재작성 규칙
■ FastCGI를 통한 PHP, 파이썬과 엔진엑스의 연동
■ 엔진엑스를 기존 HTTP 서버의 프론트엔드로 사용하는 법
■ 아파치를 엔진엑스로 교체하는 전 과정
■ 아파치 재작성 규칙을 엔진엑스에 이식하는 세 가지 실제 사례
■ 상세한 지시어 목록을 참조해 자신의 환경 설정을 찾는 법
■ 문제 해결 방법
[ 이 책의 대상 독자 ]
이 책은 엔진엑스의 초기 설치 단계부터 고급 주제까지 모든 내용을 다루기 때문에 기존 웹 서버를 교체하려는 경우든 아니면 이미 실행 중인 애플리케이션과 연동해 사용할 새로운 도구를 물색하는 경우든 인프라 최적화 솔루션에 관심이 있는 웹 관리자라면 모두에게 적합한 책이다. 특히 아파치 웹서버에 실망한 관리자, 방문자, 운영체제에게는 꼭 필요한 책이다.
[ 이 책의 구성 ]
1장, 작업 환경 준비에서는 이 책에서 사용할 리눅스 커맨드라인 작업 환경을 만드는 기본적인 방법을 제공한다.
2장, 엔진엑스의 다운로드와 설치에서는 선행 요소와 엔진엑스를 다운로드해 설치하는 과정까지 안내한다.
3장, 엔진엑스 기본 환경 설정에서는 엔진엑스의 기본 환경 설정과 코어 모듈의 설정에 관해 설명한다.
4장, HTTP 환경 설정에서는 대부분의 주요 환경 설정 블록과 지시어가 들어 있는 HTTP 코어 모듈을 자세히 다룬다.
5장, 모듈 환경 설정에서는 재작성 모듈과 SSI 모듈을 포함한 엔진엑스의 여러 가지 필수 모듈을 공부한다.
6장, 엔진엑스와 PHP, 파이썬의 연동에서는 FastCGI를 통해 PHP나 그 밖의 서드파티 애플리케이션을 엔진엑스와 연동시키는 방법을 설명한다(동적 웹사이트 서비스에 관심 있는 경우).
7장, 아파치와 엔진엑스의 병용에서는 엔진엑스를 리버스 프록시 서버로 구성해 아파치와 함께 사용하는 법을 제시한다.
8장, 아파치, 엔진엑스로 이전에서는 아파치를 엔진엑스로 완전히 교체하는 상세한 안내서를 제공한다.
부록 A, 지시어 사전에서는 모든 환경 설정 지시어를 간단한 설명과 함께 알파벳 순서로 정리한 목록을 제공한다. 각 모듈 지시어를 자세히 다룬 장 번호와 절 제목도 목록에 포함된다.
부록 B, 모듈 레퍼런스에서는 현재 사용할 수 있는 모든 모듈의 목록을 제공한다.
부록 C, 문제 해결에서는 엔진엑스 환경 설정 시에 관리자들이 가장 흔히 겪는 문제를 다룬다.
목차
목차
- 1장 작업 환경 준비
- 터미널 에뮬레이터 설정
- PuTTY 다운로드
- 세션 생성
- PuTTY와 셸 작업
- 기본 셸 명령
- 파일과 디렉토리 관리
- 사용자와 그룹 관리
- 슈퍼유저 계정
- 사용자 계정
- 그룹 관리
- 프로그램과 프로세스
- 애플리케이션의 시작
- 시스템 서비스
- 프로세스 관리
- 리눅스 파일 시스템 탐구
- 디렉토리 구조
- 특수 파일과 장치
- 장치 타입
- 가상장치
- 저장 장치 마운팅
- 파일과 아이노드
- EXT3 파일 시스템 사양
- 파일명
- 아이노드
- 접근 시간, 변경 시간, 수정 시간
- 심볼릭 링크와 하드 링크
- 파일 다루기
- 파일 읽기
- 파일 편집
- 압축과 아카이빙
- 파일 읽기
- 시스템 관리 도구
- 슈퍼유저의 명령 실행
- su 명령
- sudo 명령
- 시스템 검증과 유지 보수
- 디스크 프리
- 디스크 사용량
- 프리 메모리
- 소프트웨어 패키지
- 패키지 매니저
- 패키지 다운로드와 수동 설치
- 소스로부터 빌드하기
- 파일과 사용 권한
- 파일 사용 권한의 이해
- 디렉토리 사용 권한
- 8진수 표현
- 사용 권한 변경
- 소유권과 그룹의 변경
- 슈퍼유저의 명령 실행
- 정리
- 터미널 에뮬레이터 설정
- 2장 엔진엑스의 다운로드와 설치
- 선행 요소 설치
- GCC: GNU 컴파일러 모음
- PCRE 라이브러리
- zlib 라이브러리
- OpenSSL
- 엔진엑스의 다운로드
- 웹사이트와 자원
- 버전 브랜치
- 기능
- 다운로드와 추출
- 환경 설정 옵션
- 쉬운 방법
- 경로 옵션
- 선행 요소
- 모듈 옵션
- 기본 포함 모듈
- 기본 제외 모듈
- 기타 옵션
- 환경 설정 예
- 프리픽스 스위치
- 일반 HTTP 서버와 HTTPS 서버
- 전체 모듈의 사용
- 메일 서버 프록시
- 빌드 설정 문제
- 선행 요소 설치 확인
- 디렉토리의 존재 여부와 쓰기 권한
- 컴파일과 설치
- 엔진엑스 서비스 제어
- 데몬과 서비스
- 사용자와 그룹
- 엔진엑스 커맨드라인 스위치
- 데몬의 시작과 중지
- 환경 설정 테스트
- 기타 스위치
- 시스템 서비스에 엔진엑스 추가
- 시스템 V 스크립트
- init 스크립트
- 엔진엑스용 init 스크립트 생성
- 스크립트 설치
- 데비안 기반 배포판
- 레드햇 기반 배포판
- 정리
- 선행 요소 설치
- 3장 엔진엑스 기본 환경 설정
- 환경 설정 파일 구문
- 지시어 설정
- 구조와 인클루드
- 지시어 블록
- 고급 언어 규칙
- 지시어는 특정 구문만을 수용
- 지시어 값에서 사용되는 약자
- 변수
- 문자열 값
- 기본 모듈 지시어
- 기본 모듈이란?
- 엔진엑스 프로세스 구조
- 코어 모듈 지시어
- 이벤트 모듈
- 환경 설정 모듈
- 프로파일에 맞춘 환경 설정
- 기본 환경 설정의 이해
- 필요한 조정
- 하드웨어 맞춤 설정
- 서버 테스트
- 테스트 서버 만들기
- 성능 테스트
- Httperf
- 오토벤치
- 오픈웹로드
- 엔진엑스의 원활한 업그레이드
- 정리
- 환경 설정 파일 구문
- 4장 HTTP 환경 설정
- HTTP 코어 모듈
- 구조 블록
- 모듈 지시어
- 소켓과 호스트 환경 설정
- 경로와 문서
- 클라이언트 요청
- 마임 타입
- 한도와 규제
- 파일 처리와 캐싱
- 기타 지시어
- 모듈 변수
- 요청 헤더
- 응답 헤더
- 엔진엑스 생성 변수
- location 블록
- 로케이션 변경자
- 검색 순서와 우선순위
- 사례 1
- 사례 2
- 사례 3
- 정리
- HTTP 코어 모듈
- 5장 모듈 환경 설정
- 재작성 모듈
- 정규표현식 복습
- 목적
- PCRE 구문
- 수량자
- 캡처
- 내부 요청
- 에러 페이지
- 재작성
- 무한 루프
- 서버 측 인클루드
- 조건부 구조
- 지시어
- 일반 재작성 규칙
- 검색 수행
- 사용자 프로파일 페이지
- 다중 매개변수
- 위키피디아 스타일
- 뉴스 웹사이트 기사
- 토론 게시판
- 정규표현식 복습
- SSI 모듈
- SSI 모듈 지시어와 변수
- SSI 명령
- 파일 인클루드
- 변수 다루기
- 조건 구조
- 환경 설정
- 부가 모듈
- 웹사이트 접근과 기록
- 인덱스 모듈
- 오토인덱스 모듈
- 랜덤 인덱스 모듈
- 로그 모듈
- 한계치와 규제
- auth basic 모듈
- 접근 모듈
- 지역 제한 모듈
- 요청 제한 모듈
- 콘텐츠와 인코딩
- 엠프티 GIF 모듈
- FLV 모듈
- HTTP 헤더 모듈
- 추가 모듈
- 치환 모듈
- Gzip 필터 모듈
- Gzip 스태틱 모듈
- 문자세트 필터 모듈
- 메모리 캐시 데몬 모듈
- 이미지 필터 모듈
- XSLT 모듈
- 방문자 관련 모듈
- 브라우저 모듈
- 맵 모듈
- 지오 모듈
- 지오아이피 모듈
- 사용자 아이디 필터 모듈
- 리퍼러 모듈
- 리얼 아이피 모듈
- SSL과 보안
- SSL 모듈
- SSL 인증서 구성
- 시큐어 링크
- 기타 모듈
- 스텁 상태 모듈
- 구글 성능 도구 모듈
- 웹데브 모듈
- 서드파티 모듈
- 웹사이트 접근과 기록
- 정리
- 재작성 모듈
- 6장 엔진엑스와 PHP, 파이썬의 연동
- FastCGI의 기초
- 작동 원리의 이해
- 공통 게이트웨이 인터페이스(CGI)
- 고속 공통 게이트웨이 인터페이스(FastCGI)
- 주요 지시어
- FastCGI 캐싱
- 업스트림 블록
- 모듈 구문
- 서버 지시어
- 엔진엑스와 PHP
- 구조
- PHP-FPM
- PHP와 PHP-FPM의 설정
- 다운로드와 추출
- 패치
- 요구 사항
- PHP 빌드
- 설치 후 환경 설정
- 실행과 제어
- 엔진엑스 환경 설정
- 파이썬과 엔진엑스
- 장고
- 파이썬과 장고의 환경 설정
- 파이썬
- 장고
- FastCGI 프로세스 매니저 실행
- 엔진엑스 환경 설정
- 정리
- FastCGI의 기초
- 7장 아파치와 엔진엑스의 병용
- 리버스 프록시로서의 엔진엑스
- 쟁점 이해
- 리버스 프록시 작동 원리
- 장점과 단점
- 엔진엑스 프록시 모듈
- 주요 지시어
- 캐싱, 버퍼링, 임시 파일
- 한계치, 제한시간, 에러
- 기타 지시어
- 변수
- 아파치와 엔진엑스의 환경 설정
- 아파치 환경 재설정
- 환경 설정 개요
- 포트 번호 재설정
- 로컬 요청만 수용하기
- 엔진엑스 환경 설정
- 프록시 옵션 설정
- 콘텐츠 분리
- 고급 환경 설정
- 아파치 환경 재설정
- 추가 작업
- 정확한 IP 주소 전달
- SSL 문제와 해결책
- 서버 제어 패널 문제
- 정리
- 리버스 프록시로서의 엔진엑스
- 8장 아파치, 엔진엑스로 이전
- 엔진엑스와 아파치
- 기능
- 코어와 기능
- 일반 기능성
- 유연성과 공동체
- 성능
- 용도
- 결론
- 기능
- 아파치 환경 설정 이식
- 지시어
- 모듈
- 가상 호스트와 환경 설정 섹션
- 환경 설정 섹션
- 가상 호스트 생성
- htaccess 파일
- 아파치 .htaccess 파일 복습
- 엔진엑스 등가 기능
- 재작성 규칙
- 일반 사항
- 로케이션 관련 사항
- 구문 관련 사항
- RewriteRule
- 워드프레스
- 미디어위키
- 브이불러틴
- 일반 사항
- 정리
- 엔진엑스와 아파치
- 부록 A 지시어 사전
- 부록 B 모듈 레퍼런스
- Access(접근)
- Addition*(추가)
- Auth basic(기본 인증)
- Autoindex(자동 색인)
- Browser(브라우저)
- Charset(문자세트)
- Core(코어)
- DAV*(데브)
- Empty GIF(엠프티 지프)
- Events(이벤트)
- FastCGI
- FLV*
- Geo(지오)
- Geo IP*(지오 아이피)
- Google-perftools*(구글 성능 도구)
- Gzip
- Gzip Static*(Gzip 스태틱)
- Headers(헤더)
- HTTP Core(HTTP 코어)
- Image Filter*(이미지 필터)
- Index(색인)
- Limit Requests(요청 제한)
- Limit Zone(지역 제한)
- Log(로그)
- Map(맵)
- Memcached(메모리 캐시 데몬)
- Proxy(프록시)
- Random index*(무작위 색인)
- Real IP*(리얼 아이피)
- Referer(리퍼러)
- Rewrite(재작성)
- Secure Link*(보안 링크)
- SSI(서버 측 인클루드)
- SSL*(보안 소켓 계층)
- Stub status*(스텁 상태)
- Substitution*(치환)
- Upstream(업스트림)
- User ID(사용자 아이디)
- XSLT*
- 부록 C 문제 해결
- 일반적인 문제 해결 팁
- 접근 권한 확인
- 환경 설정 테스트
- 서비스를 재로드했는지 확인
- 로그 확인
- 설치 문제
- 403 Forbidden 맞춤형 에러 페이지
- 로케이션 블록 우선순위
- If 블록 문제
- 비효율적 명령문
- 예측할 수 없는 동작
- 일반적인 문제 해결 팁
도서 오류 신고
정오표
[ p404 표 '기본 제외 모듈' 열 ]
--with-http_gzip_module → --with-http_gzip_static_module
--with-http_gzip_module → --with-http_gzip_static_module