day 38 - Nginx 기본 개요

5234 단어
1. Nginx 의 소개
Nginx 는 고성능 HTTP 서버 / 리 버스 프 록 시 및 이메일 (IMAP / POP 3) 프 록 시 서버 입 니 다.러시아의 프로그래머 Igor Sysoev 가 개발 한 공식 테스트 Nginx 는 5 만 개의 병렬 링크 를 지탱 할 수 있 고 CPU, 메모리 등 자원 소 모 는 매우 낮 으 며 운행 이 매우 안정 적 이다.
2. 흔 한 웹 서버
(1)Nginx (2) httpd (3)Tengine (4)openresty
3. Nginx 응용 장면
(1) 역방향 에이전트 (2) 부하 균형 (3) 프 록 시 캐 시 (4) 정적 자원 (5) 동정 분리 (6) HTTPS 보안
4. Nginx 설치 설정 시작
(1) 공식 창고 소스 설치
[root@web01 ~]# cat /etc/yum.repos.d/nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing. key (2). yum 로 직접 설치 [root@web01~] \ # yum install nginx - y (3) 시작 nginx
5. Nginx 설정 설명
[root@web01 ~]# cat /etc/nginx/nginx.conf
user  nginx;                                    ( nginx       )
worker_processes  1;                            (nginx       )
error_log  /var/log/nginx/error.log warn;       (        [        ])
pid        /var/run/nginx.pid;                  (      ,     pid)


events {                                        (    )
    worker_connections  1024;                   (  work        )
    use epoll;                                  (  epoll    )
}


http {                                          (     http  )
    include       /etc/nginx/mime.types;        (            )
    default_type  application/octet-stream;     (     (  )

        
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;    (       )
    #sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;      (       )
    #gzip  on;                  (      )
    
    
    #  Server    ,   Server{}      
    server {
        listen 80;
        server_name test.oldxu.com;
        
        location / {                    (         )
            root ...;
        }
    }

    include /etc/nginx/conf.d/*.conf;       (      )
}


PS: Nginx 의 http, server, location 간 의 관 계 는?http * 81955 ° 탭 은 주로 사용자 의 요청 과 응답 을 해결 하 는 데 사 용 됩 니 다.server * 8195 ° 라벨 은 주로 구체 적 인 특정한 사이트 에 응답 하 는 데 사 용 됩 니 다.location 은 주로 사이트 의 구체 적 인 url 경 로 를 일치 시 키 는 데 사 용 됩 니 다.
http {} 층 아래 에 여러 개의 Server {} 를 허용 하고 여러 개의 사 이 트 를 가 질 수 있 습 니 다. 하나의 Server {} 아래 에 여러 개의 location {} 을 허용 합 니 다. 각 사이트 의 uri 경로 가 다 르 기 때문에 각각 일치 해 야 합 니 다.
6. Nginx 게임 사이트 구축
(1) 이전 기본 사이트 주석 지우 기 [root@web01 html]# cd /etc/nginx/conf.d/ [root@web01 conf.d]# gzip default.conf
(2). 게임 사이트 Nginx 프로필 작성
[root@web01 conf.d]# cat game.oldxu.com.conf 
server {
    listen 80;          (          )
    server_name game.oldxu.com; (        )
    
    location / {
        root /code;
        index index.html;
    }
}

(3) Nginx 설정 파일 에 따라 초기 화 [root@web01 conf.d]# mkdir /code
(4) 업로드 코드 [root@web01 conf.d]# cd /code/ [root@web01 code]# rz html5.zip [root@web01 code]# unzip html5.zip
(5) 검 측 문법 [root@web01 code]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
(6) 과부하 서비스 [root@web01 code]# systemctl restart nginx
(7) 도 메 인 이름 분석 C: \ \ Windows \ System 32 \ 드라이버 \ etc \ \ 호스트 편집 hosts - ip 주소 + 도 메 인 이름 설정
8. Nginx 접근 의 전체 프로 세 스
http:// game.oldxu.com / game/yibihua/index.html
요청 한 uri: / game / yibihua / index. html 실제 맵 위치: / code / game / yibihua / index. html
9. Nginx 여러 게임 사이트 구축 - > 가상 호스트
    :               

Nginx 가상 호스트 설정 은 다음 과 같은 세 가지 방식 이 있 습 니 다. 방식 1. 호스트 기반 다 중 IP 방식 10.0.0.7 172.16.1.7 방식 2. 포트 기반 설정 방식 80 81 82 83 방식 3. 이름 기반 방식 (다 중 도 메 인 이름 방식) test 1 test 2 test 3.
방식 1. 호스트 기반 다 중 IP 방식
[root@web01 conf.d]# cat ip_eth0.conf 
server {
    listen 10.0.0.7:80;
    location / {
        root /ip1;
        index index.html;
    }
}
server {
    listen 172.16.1.7:80;
    location / {
        root /ip2;
        index index.html;
    }
}
[root@web01 conf.d]# mkdir /ip1 /ip2
[root@web01 conf.d]# echo "10...." > /ip1/index.html
[root@web01 conf.d]# echo "172...." > /ip2/index.html
[root@web01 conf.d]# systemctl restart nginx


    
[root@web01 ~]# curl http://10.0.0.7
10.... 
[root@web01 ~]# curl http://172.16.1.7
172....


방식 2. 포트 기반 설정 방식 81 82 83 회사 내부 에 여러 개의 시스템 이 있 습 니 다. 한 서버 에 배치 하고 싶 습 니 다. 내부 네트워크 에는 도 메 인 이름 이 없습니다. 그래서 우 리 는 같은 IP, 서로 다른 포트 를 통 해 서로 다른 사이트 페이지 를 방문 할 수 있 습 니 다.
[root@web01 conf.d]# cat port.conf 
server {
    listen 81;

    location / {
        root /81;
        index index.html;
    }
}

server {
    listen 82;

    location / {
        root /82;
        index index.html;
    }
}

server {
    listen 83;

    location / {
        root /83;
        index index.html;
    }
}
[root@web01 conf.d]# mkdir /81 /82 /83
[root@web01 conf.d]# echo "81" > /81/index.html
[root@web01 conf.d]# echo "82" > /82/index.html
[root@web01 conf.d]# echo "83" > /83/index.html

좋은 웹페이지 즐겨찾기