Nginx 서버 설정

12777 단어 Nginx
목차
  • Nginx 설치 하 자마자
  • 1.1 설치 절차
  • 2 Nginx 조작 방식
  • 2.1 Nginx 시작
  • 2.2 스 톱 nginx
  • 2.3 nginx 버 전 보기
  • 2.4 프로필 수정 후 다시 불 러 오기
  • 2.5 현재 프로필 이 올 바른 지 테스트 하기
  • 3 Nginx 역방향 프 록 시 설정 (nginx. conf 설정)
  • 3.1 작업 절차
  • 3.2 ngix. conf 프로필 설정 사례
  • 3.3 설치 완료 후 부하 균형 테스트
  • 4 Nginx 프로필 더 보기
  • Nginx 설치
  • 1.8 설치 실패, 아래 1.14 설치
  • 1.1 설치 절차
    참고 문서:https://www.cnblogs.com/dtiove/p/5924385.html 1. 원본 코드 를 다운로드 한 후 압축 해제 2. 압축 해제 후 디 렉 터 리 에 들 어가 다음 문 구 를 입력 하 십시오.
    /usr/sbin/nginxsudo ./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock

    niginx. conf 주 소 는: / etc / nginx / nginx. conf 입 니 다.
  • 설치
  • make && make install

    이 Nginx 조작 방식
    2.1 Nginx 시작
  • nginx 가 있 는 루트 디 렉 터 리 창 에 들 어가 기:
  • nginx. exe 또는 start nginx
  • 실행
    linux: - ./nginx
    2.2 정지 nginx
  • nginx - s stop 또는 nginx - s quit
  • 2.3 nginx 버 전 보기
  • nginx - v 또는 nginx - V
  • 2.4 프로필 수정 후 다시 불 러 오기
  • nginx - s reload (nginx 를 수 동 으로 다시 시작 하지 않 음)
  • 2.5 현재 프로필 이 올 바른 지 테스트
  • nginx -t

  • 3 Nginx 역방향 프 록 시 설정 (nginx. conf 설정)
    3.1 조작 절차
  • 백업 ngix. conf (파일 디 렉 터 리 설치 설정 보기)
  • nginx. conf 수정
  • http 사전 에 upstream 을 설정 하여 이 upstream 의 부하 균형 알고리즘 과 각 호스트
  • 를 정의 합 니 다.
        #  http   upstrean  ,     ,   server       tomcat 
      ip      
        #   :   upstream     location        http://upstream 
      ,  upstream         
        upstream test_gupan{
            ip_hash; #            ,        
                server 172.16.225.1:8080;
                server 172.16.225.129:8080;
        }
  • http 의 server 사전 에서 location 설정 을 찾 아 설정 한 upstream 을 location 에 추가 합 니 다
  •         location / {
                # root   html;
                # index  index.html index.htm;
                #     proxy_pass      userstream,        
                proxy_pass http://test_gupan;
            }
  • 연결 유지 시간 설정, 보통 65 ~ 120 ms
  •         keepalive_timeout  65; #        ,          ,   65 120(>   )  
  • nginx 시작
  • 시작 할 때 오류 가 발생 할 수 있 습 니 다 (2018 / 06 / 25 09: 43: 18 [error] 4694 \ # 0: open () "/ var / run / nginx / nginx. pid" failed (2: No such file or directory). / var / run / nginx / nginx. pid 를 찾 을 수 없습니다. nginx. pid 의 경 로 는 config 파일 의 9 번 째 줄 에 설 치 된 문서 경로 입 니 다. 해결 방법 은 다음 과 같 습 니 다. 1. sudo nginx - c nginx 설정 파일 경로 (이 경 로 는 설치 할 때의 설정 을 봅 니 다)2. sudo nginx s reload (프로필 다시 불 러 오기)
  • nginx 부하 균형 효과
  • 3.2 nginx. conf 프로필 설정 사례
    
    #user  nobody;
    worker_processes  2; #   /proc/cpuinfo  processor      
    
    #error_log  logs/error.log;
    #error_log  logs/error.log  notice;
    #error_log  logs/error.log  info;
    
    #   pid      ,    nginx   
    pid        /var/run/nginx/nginx.pid;
    
    
    events {
        worker_connections  1024; #       ,   2  1024,   4  2048,    
    }
    
    
    http {
        #   
            #  http   upstrean  ,     ,   server       tomcat   ip      
            #   :   upstream     location        http://upstream   ,  upstream         
        upstream test_gupan{
            ip_hash; #            ,        
                server 172.16.225.1:8080;
                server 172.16.225.129:8080;
        }
        include       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  logs/access.log  main;
    
        sendfile        on;
        #tcp_nopush     on;
    
        #keepalive_timeout  0;
        keepalive_timeout  65; #        ,          ,   65 120(   )  
    
        # gzip             ,                           ,        ,    .
        gzip  on;
    
        server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                # root   html;
                # index  index.html index.htm;
                #     proxy_pass      userstream,        
                proxy_pass http://test_gupan;
            }
    
    
            #         
            #error_page  404              /404.html;
    
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
    
            # proxy the PHP scripts to Apache listening on 127.0.0.1:80
            #
            #location ~ \.php$ {
            #    proxy_pass   http://127.0.0.1;
            #}
    
            # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
            #
            #location ~ \.php$ {
            #    root           html;
            #    fastcgi_pass   127.0.0.1:9000;
            #    fastcgi_index  index.php;
            #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            #    include        fastcgi_params;
            #}
    
            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /\.ht {
            #    deny  all;
            #}
        }
    
    
        # another virtual host using mix of IP-, name-, and port-based configuration
        #
        #server {
        #    listen       8000;
        #    listen       somename:8080;
        #    server_name  somename  alias  another.alias;
    
        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}
    ====
    
        # HTTPS server
        #
        #server {
        #    listen       443 ssl;
        #    server_name  localhost;
    
        #    ssl_certificate      cert.pem;
        #    ssl_certificate_key  cert.key;
    
        #    ssl_session_cache    shared:SSL:1m;
        #    ssl_session_timeout  5m;
    
        #    ssl_ciphers  HIGH:!aNULL:!MD5;
        #    ssl_prefer_server_ciphers  on;
    
        #    location / {
        #        root   html;
        #        index  index.html index.htm;
        #    }
        #}
    
    }

    3.3 설정 완료 후 부하 균형 테스트
  • - nginx - s reload 를 입력 하여 설정 파일 을 다시 불 러 옵 니 다
  • 브 라 우 저 주소 표시 줄 에 설 정 된 nginx 의 IP 주 소 를 입력 하고 각각 ip 주 소 를 172.16.225.1: 8080 과 172.16.225.129: 8080 의 호스트 를 닫 고 nginx 의 도약
  • 을 봅 니 다.
  • 172.16.225.1 호스트 를 닫 은 후 nginx 가 설정 한 ip 주 소 를 방문 한 후 172.16.225.129: 8080 호스트
  • 를 방문 합 니 다.
  • 172.16.225.129 호스트 를 닫 은 후 nginx 가 설정 한 IP 주 소 를 방문 한 후 172.16.225.1: 8080 호스트
  • 를 방문 합 니 다.
    4 Nginx 프로필 더 보기
  • nginx 역방향 에이전트 의 명령 은 추가 모듈 을 추가 할 필요 가 없습니다. 기본 적 인 자체 proxvpass 명령, 설정 파일 만 수정 하면 역방향 에이전트
  • 를 실현 할 수 있 습 니 다.
    upstream myserver{
        server 192.168.1.116 down; # down     server     
        server 192.168.1.117 backup; # backup        backup        ,  abckup  ,            
    
        # weight      ,     1,             (                   )
        server 192.168.1.121 weight=1;
        server 192.168.1.122 weight=2;
    }

    좋은 웹페이지 즐겨찾기