Nginx 최적화 및 도 난 방지 체인 + 단기 배치 LNMP

5704 단어 짜임새
Nginx 최적화 및 도 난 방지 체인 + 단기 배치 LNMP
글 목록
  • Nginx 최적화 및 도 난 방지 체인 + 단기 배치 LNMP
  • 1. Nginx 의 최적화
  • 1. 컴 파일 설치 전의 최적화
  • (1) zlib - devel, pcre - devel 등 의존 패키지 설치
  • (2) Nginx 소스 패키지 다운로드
  • (3) 압축 해제 소스 패키지
  • (4) 소프트웨어 이름과 버 전 번호 숨 기기
  • 2. nginx 설치
  • (1) nginx 그룹 추가
  • (2) 컴 파일 설치
  • (3) nginx 시작
  • (4) 버 전과 소프트웨어 이름 을 숨 겼 는 지 테스트
  • 3. nginx 설정 항목 최적화
  • (1) Nginx 실행 작업 설정 프로 세 스 개수
  • (2) Nginx CPU 친화력 실행
  • (3) Nginx 최대 파일 개수
  • (4) Nginx 이벤트 처리 모델
  • (5) 고 효율 전송 모드 오픈
  • (6) 연결 시간 초과
  • (7) fastcgi 변조
  • (8) gzip 변조
  • (9) expires 캐 시 변조
  • (10) 도 난 방지 체인
  • (11) 커 널 파라미터 최적화
  • (12) 시스템 연결 수 에 대한 최적화:
  • 2. LNMP 배치
  • 1. phop 설치
  • (1) 의존 관계 해결
  • (2) 컴 파일 설치 phop
  • (3) php 프로필 제공
  • (4) php - fpm 에 스 크 립 트 제공
  • (5) php - fpm 프로필 제공 및 편집
  • 3. 검증, 압력 테스트
  • 1. 도 난 방지 체인 검증
  • 2. gzip 기능 검증
  • 3. 압력 테스트
  • 5. xcache 가속 phop
  • (1) xcache 설치
  • (2) xcache 캐 시 파일 만 들 기
  • (3) xcache 배경 관리 프로그램 을 사이트 루트 디 렉 터 리 로 복사
  • (4) php 지원 xcache 설정
  • 6. 테스트
  • Nginx 는 러시아인 들 이 작성 한 매우 경량급 HTTP 서버 입 니 다. Nginx 는 'engine X' 라 는 발음 으로 고성능 HTTP 와 역방향 프 록 시 서버 이 며 IMAP / POP 3 / SMTP 프 록 시 서버 입 니 다. Nginx 는 러시아인 Igor Sysoev 가 러시아 방 문 량 에서 두 번 째 로 많은 Rambler. ru 사이트 개발 입 니 다.
    Nginx 는 이벤트 구동 (epoll) 방식 으로 작성 되 었 기 때문에 매우 좋 은 성능 을 가지 고 있 으 며 매우 효율 적 인 역방향 에이전트, 부하 균형 이기 도 합 니 다.그러나 Nginx 는 cgi 방식 의 실행 을 지원 하지 않 습 니 다. 이 로 인해 발생 하 는 프로그램의 빈틈 을 줄 일 수 있 기 때 문 입 니 다.그래서 PHP 프로그램 을 FastCGI 로 실행 해 야 합 니 다.
    Nginx 자체 의 장점, 경 량, 오픈 소스, 사용 하기 쉽 기 때문에 점점 더 많은 회사 들 이 nginx 를 자사 의 웹 응용 서버 로 사용 하고 있다. 본 고 는 nginx 소스 코드 를 설치 하 는 동시에 nginx 를 최적화 설정 하고 자 한다.
    1. Nginx 의 최적화
    1. 컴 파일 설치 전의 최적화
    컴 파일 전의 최 적 화 는 주로 프로그램 이름 을 수정 하 는 등 소스 코드 를 바 꾸 어 소프트웨어 이름과 버 전 번 호 를 숨 기 는 데 사용 된다.
    (1) zlib - devel, pcre - devel 등 의존 팩 설치
    [root@nginx ~]# yum -y install gcc gcc-c++ make libtool zlib zlib-devel pcre pcre-devel openssl openssl-devel
    

    (2) Nginx 소스 패키지 다운로드
    [root@nginx ~]# wget http://nginx.org/download/nginx-1.10.2.tar.gz
    

    (3) 압축 해제 소스 패키지
    [root@nginx ~]# tar zxf nginx-1.10.2.tar.gz 
    [root@nginx ~]# cd nginx-1.10.2/
    

    (4) 소프트웨어 이름과 버 전 번호 숨 기기
    [root@nginx nginx-1.10.2]# vim src/core/nginx.h
    #             
    #define NGINX_VERSION      "1.10.2"  #  13 
    #                
    #define NGINX_VER          "nginx/" NGINX_VERSION  #  14 
    

    위의 정 보 를 수정 하면 nginx 디 스 플레이 버 전 을 변경 할 수 있 습 니 다.예 를 들 어: (curl – I 에서 볼 수 있 습 니 다. 요청 헤더 와 응답 헤더 표시)
    #define NGINX_VERSION      "7.0"
    #define NGINX_VER          "IIS/" NGINX_VERSION
    

    HTTP 헤더 정보 에 있 는 connection 필드 를 수정 하여 구체 적 인 버 전 번 호 를 표시 하지 않도록 합 니 다.
    확장:
    유 니 버 설 http 헤드, 유 니 버 설 헤드 는 요청 과 응답 메시지 가 모두 지원 하 는 헤드 를 포함 하고, 유 니 버 설 헤드 는 Cache - Control, Connection, Date, Pragma, Transfer - Encoding, Upgrade, Via 를 포함한다.유 니 버 설 헤드 의 확장 은 통신 쌍방 이 모두 이 확장 을 지원 하도록 요구 합 니 다. 지원 하지 않 는 유 니 버 설 헤드 가 존재 하면 일반적으로 실체 헤드 로 처 리 됩 니 다.그러면 일부 장치 나 소프트웨어 가 있 고 connection 을 얻 을 수 있 으 며 일 부 는 숨 길 수 없 으 니 철저히 숨 겨 야 한 다 는 것 이다!
    [root@nginx nginx-1.10.2]# vim src/http/ngx_http_header_filter_module.c
    #    
    static char ngx_http_server_string[] = "Server: nginx" CRLF; #  49 
    #    
    static char ngx_http_server_string[] = "Server: IIS" CRLF;
    
    

    http 오류 코드 의 반환 을 정의 합 니 다:
    때때로 우리 페이지 프로그램 에 오류 가 발생 하면 Nginx 는 우 리 를 대신 해서 해당 하 는 오류 코드 를 되 돌려 줍 니 다. 다시 표시 할 때 nginx 와 버 전 번 호 를 가 져 옵 니 다. 우 리 는 그 를 숨 깁 니 다.
    [root@nginx nginx-1.10.2]# vim src/http/ngx_http_special_response.c
    #    
    static u_char ngx_http_error_tail[] =
    "
    nginx
    "
    CRLF # 29 "

    좋은 웹페이지 즐겨찾기