nginx 리 버스 에이전트 의 기본 설정 (Ubuntu 16.04LTS 의 경우)

9530 단어 linux
nginx 역방향 에이전트 의 기본 설정 및 ssl 인증서 의 설정 은 https 접근 을 실현 합 니 다.
  • nginx 역방향 에이전트 의 기본 설정 및 ssl 인증서 의 설정 은 https 접근 을 실현 합 니 다.
  • nginx 설치
  • apache 포트 번 호 를 수정 하여 오류 방지
  • nginx 디 렉 터 리 에 서버 설정 추가
  • hostconf 프로필 쓰기
  • nginx 재 부팅
  • 효과 그림
  • 어떻게 SSL 을 nginx 로 설정 하고 역방향 대 리 를 설정 합 니까?
  • 전체 사이트 암호 화


  • 1. nginx 설치
    pkill -9 apache2 #   apache
    sudo apt install nginx #   nginx,  Ubuntu      apt-get

    2. apache 포트 번 호 를 수정 하여 오류 방지
    sudo vim /etc/apache2/ports.conf #      81,   nginx   ,      
    sudo service apache2 start #   apache    ,       

    3. nginx 디 렉 터 리 에 서버 설정 추가
    cd /etc/nginx/conf.d/ #         
    vim host.conf  #          

    conf. d 디 렉 터 리 에 새로 설 치 된 nginx 에는 파일 이 존재 하지 않 습 니 다. host. conf 파일 을 새로 만 듭 니 다.nginx 디 렉 터 리 에 있 는 nginx. conf 에서 conf. d 의 모든 파일 을 가 져 왔 습 니 다. 다음 그림:
    그래서 conf. d 에서 직접 프로필 host 프로필 을 작성 합 니 다.
    host. conf 프로필 쓰기
    server
    {
            listen 80;
            server_name live.triste.com;
            index index.html index.htm index.php
            root /var/www/html;
            location / {
                    proxy_pass http://localhost:81;
                    proxy_redirect off;
                    proxy_set_header        Host    $host;
                    proxy_set_header        X-Real-IP       $remote_addr;
                    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
                    proxy_max_temp_file_size 0;
                    proxy_connect_timeout 90;
                    proxy_send_timeout 90;
                    proxy_read_timeout 90;
                    proxy_buffer_size 4k;
                    proxy_buffers 4 32k;
                    proxy_busy_buffers_size 64k;
                    proxy_temp_file_write_size 64k;
            }
    }
    
    server
    {
        listen 80;
            server_name info.triste.com;
            index index.html index.htm index.php
            root /var/www/html;
            location / {
                    proxy_pass http://localhost:81;
                    proxy_redirect off;
                    proxy_set_header        Host    $host;
                    proxy_set_header        X-Real-IP       $remote_addr;
                    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
                    proxy_max_temp_file_size 0;
                    proxy_connect_timeout 90;
                    proxy_send_timeout 90;
                    proxy_read_timeout 90;
                    proxy_buffer_size 4k;
                    proxy_buffers 4 32k;
                    proxy_busy_buffers_size 64k;
                    proxy_temp_file_write_size 64k;
            }
    }

    다시 시작 nginx
    sudo service nginx reload

    효과 도
    nginx 접근
    apache 로 역방향 에이전트
    apache 로 역방향 에이전트
    어떻게 SSL 을 nginx 로 설정 하고 역방향 대 리 를 설정 합 니까?
    ssl 인증 서 를 가 진 경우:
    직접 코드 는 다음 과 같 습 니 다.
    server {
            listen 443;
            server_name www.domain.com; #         
            ssl on;
            ssl_certificate 1_www.domain.com_bundle.crt;
            ssl_certificate_key 2_www.domain.com.key;
            ssl_session_timeout 5m;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #        
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#        
            ssl_prefer_server_ciphers on;
            location / {
                root   html; #    
                index  index.html index.htm;
            }
        }
    

    위의 코드 가 설정 되 어 있 습 니 다 www.domain.com. 이제 https://www.domain.com 를 통 해 접근 할 수 있 습 니 다.
    역방향 에이전트 설정:
    
    server {
            listen 443;
            server_name blog.domain.com; #         
            ssl on;
            ssl_certificate blog.domain.com_bundle.crt;
            ssl_certificate_key blog.domain.com.key;
            ssl_session_timeout 5m;
            ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #        
            ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#        
            ssl_prefer_server_ciphers on;
        location / {
                    proxy_pass http://localhost:81;
                    proxy_redirect off;
                    proxy_set_header        Host    $host;
                    proxy_set_header        X-Real-IP       $remote_addr;
                    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
                    proxy_max_temp_file_size 0;
                    proxy_connect_timeout 90;
                    proxy_send_timeout 90;
                    proxy_read_timeout 90;
                    proxy_buffer_size 4k;
                    proxy_buffers 4 32k;
                    proxy_busy_buffers_size 64k;
                    proxy_temp_file_write_size 64k;
        }
    }

    위 와 같이 https 역방향 대 리 를 설정 하 였 습 니 다.
    국내 무료 ssl 인증 서 는 도 메 인 이름 인증서 이기 때문에 설정 할 때마다 인증 서 를 다시 만들어 야 합 니 다.
    전역 암호 화
    nginx. conf 파일 을 편집 합 니 다. Ubuntu 의 위 치 는 다음 과 같 습 니 다. /etc/nginx/nginx.conf
    http {
        #     
        server {
            rewrite ^(.*) https://$host$1 permanent;
        }
    }

    위의 코드 는 http 에서 https 로 자동 으로 이동 하여 전체 사이트 의 암호 화 를 실현 할 수 있 습 니 다.

    좋은 웹페이지 즐겨찾기