~ docker 에 nginx 를 설치 하고 https 를 통 해 접근 하도록 설정 합 니 다.
nginx 의 프로필 은 먼저 nginx. conf 파일 입 니 다. 기본 프로필 은 다음 과 같 습 니 다.
nginx 를 실행 하 는 사용자
user nginx;
시작 프로 세 스 를 CPU 개수 와 동일 하 게 설정 합 니 다.
worker_processes 1;
전역 오류 로그 및 PID 파일 의 위치
error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;
작업 모드 및 연결 수 상한 선
events {\ # 단일 배경 work 프로 세 스 의 최대 병발 수 는 1024 worker connections 1024 로 설정 합 니 다.}
http {\ # mime 형식 설정 include / etc / nginx / time. types; default type application / ocket - 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
#gzip on;
include /etc/nginx/conf.d/*.conf;
} 마지막 줄 에 다른 프로필 conf. d / default. conf 를 포함 하여 server 필드 를 설정 할 수 있 습 니 다.
server {listen 80; \ # 80 포트 를 검색 합 니 다. 모든 접근 을 강제로 HTTPs 로 해 야 한다 면 이 줄 은 server name www. buagengen. com 을 취소 해 야 합 니 다. \ # 도 메 인 이름
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
#
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#
#error_page 404 /404.html;
# /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
} nginx 의 기본 홈 페이지 html 파일이 럴 때 IP 주 소 를 통 해 nginx 가 정의 하 는 html 파일 에 직접 접근 할 수 있 습 니 다.그러나 이때 의 방문 은 http 에 불과 합 니 다. https 의 방문 은 안 됩 니 다. nginx 서버 에 인증 서 를 추가 해 야 합 니 다.
Country Name (2 letter code) [AU]: 국가 명 State or Province Name (full name) [Some - State]: 성 Locality Name (eg, city) []: 도시 조직 명 (eg, company) [Internet Widgits Pty Ltd]: 회사 명 조직 단위 명 (eg, section) []: Common Name (예: server FQDN 또는 Your name) []: 사이트 도 메 인 이름 이메일 주소 []: 메 일 주소
Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: 여기에 비밀 번 호 를 입력 해 야 합 니 다 An optional company name []: RSA 비밀 키 를 쓰 십시오 (여기 도 이전에 설정 한 비밀 번 호 를 입력 해 야 합 니 다): openssl rsa - in server. key - out servernopwd. key 비밀 키 가 져 오기: openssl x509 - req - days 365 - in server. csr - signkey servernopwd. key - out server. crt 이 단 계 를 마 친 후에 우리 가 필요 로 하 는 인증서 파일 과 비밀 키 를 얻 었 습 니 다.
server.crt server.key
# ssl
#ssl on; # HTTPs ,
ssl_certificate /ssl/server.crt;
ssl_certificate_key /ssl/server.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
# openssl
ssl_protocols SSLv2 SSLv3 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5; #
ssl_prefer_server_ciphers on; # SSLv3 TLSv1
#
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
# /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
} nginx 용 기 를 다시 시작 하면 https 를 통 해 nginx 서버 에 접근 할 수 있 습 니 다.
저자: EVANMORE 링크:https://www.jianshu.com/p/5f9bd492f186 출처: 저작권 은 작가 의 소유 이 며, 어떠한 형식의 전재 도 작가 에 게 연락 하여 권한 을 수 여 받 고 출처 를 밝 혀 주 십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.