Nginx 아래 springboot 프로젝트 + HTTPS SSL 인증 배치

5077 단어 nginx
본인 환경: VM + centos + Nginx
먼저 nginx 아래 에 spring boot 프로젝트 를 배치 하려 면 nginx 를 설치 해 야 합 니 다. 여 기 는 더 이상 번 거 롭 지 않 습 니 다. 할 줄 모 르 는 학생 들 은 이 글 을 보 세 요.https://blog.csdn.net/m0_37747750/article/details/95473902。
SSL 인증서 신청
HTTPS 는 SSL 인증서 가 필요 합 니 다. SSL 인증서 의 신청 은 텐 센트 클 라 우 드 에서 무료 인증 서 를 신청 할 수 있 습 니 다.
SSL 인증서 관리 콘 솔 에서 다운로드 및 압축 풀기 인증서 파일 을 로 컬 디 렉 터 리 에 패키지 합 니 다.압축 을 풀 면 Nginx 폴 더 와 CSR 파일 을 얻 을 수 있 습 니 다.
  • 폴 더 이름: Nginx
  • 폴 더 내용:
  • 1_www.domain.com_bundle.crt  인증서 파일
  • 2_www.domain.com.key  비밀 키 파일
  • CSR 파일 내용:  www.domain.com.csr  파일
  • 가 져 온  1_www.domain.com_bundle.crt  인증서 파일 과  2_www.domain.com.key  비밀 키 파일 이 로 컬 디 렉 터 리 에서 Nginx 서버 로 복사 되 었 습 니 다.  /usr/local/nginx/conf  목록 아래
    다음은 nginx 프로필 을 설정 하 는 것 입 니 다.  vi / usr / local / nginx / conf / nginx. conf - 이것 은 작은 nginx 의 설치 설정 경로 입 니 다. \ #user  nobody; worker_processes  1;
    #error_log  logs/error.log; #error_log  logs/error.log  notice; #error_log  logs/error.log  info;
    #pid        logs/nginx.pid;
    events {     worker_connections  1024; }
    http {     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;
        #gzip  on;
        server {         listen       80;         server_name  hrblgh.com;  #작은 도 메 인 이름        rewrite ^(.*)$ https://${server_name}$1 permanent;
           #사실 여기에 설정 하면 됩 니 다. 80 포트 의 접근 을 443 포트 로 전송 합 니 다.        #charset koi8-r;
            #access_log  logs/host.access.log  main;
            location / {         proxy_pass http://127.0.0.1:8001; \ # 작은 슬 래 그 프로젝트 의 포트 번호        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;         proxy_set_header X-Forwarded-Proto $scheme;         proxy_set_header X-Forwarded-Port $server_port;         }
            #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;   #여기 버 전 별로 두 가지 가 있어 요.   ssl  혹은  ssl  on; (자신 이 설치 한 nginx. conf 프로필 을 직접 보 세 요)        server_name  hrblgh. com; \ # 어린 도 메 인 이름        ssl_certificate      1_hrblgh.com_bundle.crt;  #텐 센트 클 라 우 드 SSL 인증 에서 다운로드 한 인증서        ssl_certificate_key 2_hrblgh.com.key;   #텐 센트 클 라 우 드 SSL 인증 에서 다운로드 한 인증서         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://127.0.0.1:8001;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;         proxy_set_header X-Forwarded-Proto $scheme;         proxy_set_header X-Forwarded-Port $server_port;        }     }
    } 다음 저장 종료 하면 됩 니 다.: wq!
    설정 에 오류 가 있 는 지 확인 합 니 다.   cd /usr/local/nginx/sbin     
    ./nginx -t   (오류 가 있 으 면 작은 시 든 설정 정 보 를 진지 하 게 대조 하 십시오. 완전히 복사 하지 마 십시오. 설정 파일 에 표 시 된 주석 부분 은 자신의 이름 으로 수정 해 야 합 니 다.) 
    다시 시작 nginx:. / nginx - s reload
    다음은 프로젝트 를 Liux 시스템 에 업로드 합 니 다.  시동 걸 면 돼 요.  
    java  -jar 디 렉 터 리 / 프로젝트 이름. jar (전제 조건 은 Linux 에 jdk 8 이상 버 전이 설치 되 어 있 음)
    이제 방문 하 실 수 있 습 니 다.  :http://hrblgh.com
    여기에 접근 할 수 없 을 수도 있 습 니 다. 작은 문 제 는 자신 이 신청 한 도 메 인 이름 이 Liux 서버 에 연결 되 어 있 지 않 기 때 문 입 니 다.https://blog.csdn.net/linhai1028/article/details/80258703 클 라 우 드 분석 을 한 후에 정상적으로 접근 할 수 있 고 안전 하 다 고 표시 할 수 있 습 니 다.

    좋은 웹페이지 즐겨찾기