오류없이 LE를 사용하여 인증서를 만들었으며, 트래픽을 포트 80에서 포트 443으로 리디렉션했습니다. 그러나 nginx 서버를 다시로드 할 때 웹 사이트에 액세스 할 수 없습니다. Ngnix 오류 로그에는 다음 줄이 표시됩니다.
4 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking, client: 192.168.0.104, server: 0.0.0.0:443
나는 이것이 내가 인증서의 경로로 탐색 한 인증서를 찾을 수 없으며 둘 다 있다는 것을 의미한다고 생각합니다. 무엇이 문제 일 수 있습니까? Ngnix 구성은 다음과 같습니다.
server {
listen 80;
server_name pumaportal.com www.pumaportal.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name pumaportal.com www.pumaportal.com;
add_header Strict-Transport-Security "max-age=31536000";
ssl_certificate /etc/letsencrypt/live/pumaportal.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/pumaportal.com/privkey.pem;
ssl_stapling on;
ssl_stapling_verify on;
access_log /var/log/nginx/sub.log combined;
location /.well-known {
alias /[MY PATH]/.well-known;
}
location / {
proxy_pass http://localhost:2000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
문제가 될 수있는 곳을 이해하지 못하는 것은 매우 간단합니다.
nginx -t를 실행하면 모든 것이 정상으로 보입니다.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
server
블록이 있습니까? 그 오류가 발생했을 때 정확히 무엇을 했습니까?