XE나 라이믹스는 아닙니다.
현재 라이믹스로 운영되는 사이트는 정상적으로 https://www.로 접속이 잘됩니다만.
그냥 일반 html파일로만 구성된 사이트가 있는데
http로 입력시 https 로는 바뀌지만
어떤 접속 주소든지 https://www.도메인.com 주소로 할려고하는데
nginx conf 파일을 구글링해서 수정해보아도 접속이 안되거나 리다이렉션 횟수가 많다고 하는 에러가 발생합니다.
아래는 현재 정상적으로 작동되는 세팅된 값입니다.
server {
listen 80;
server_name 도메인.com www.도메인.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name 도메인.com www.도메인.com;
root /home/user1/www;
client_max_body_size 10M;
ssl_certificate "/etc/letsencrypt/live/user1/fullchain.pem";
ssl_certificate_key "/etc/letsencrypt/live/user1/privkey.pem";
ssl_dhparam "/etc/ssl/certs/dhparam.pem";
좋은 저녁되시구요 항상 건강 행복하세요~
댓글 5
server { } 블럭이 3개가 필요합니다.
1. 80 포트에서 도메인.com 과 www.도메인.com 을 https://www.도메인.com 으로 리다이렉트해 주는 블럭
2. 443 포트에서 https://도메인.com 을 https://www.도메인.com 으로 리다이렉트해 주는 블럭
3. 443 포트에서 실제로 https://www.도메인.com 을 처리하는 블럭
지금은 2번과 3번이 구분되지 않아서 https://도메인.com으로 접속한 경우 리다이렉트되지 않고,
복붙하다가 빠뜨리셨는지는 모르겠지만 맨 뒤에 } 도 하나 빠진 것 같네요.
만약 클라우드플레어 등의 외부 서비스를 경유해서 접속한다면 그것 때문에 오류가 발생할 수도 있습니다.
답변감사드립니다. 복붙 하다가 빠진 상태입니다.
말씀하신대로 3개 블럭이 필요한거 까지 이해를 하였으나
실제 처리를 할려면 블럭마다
return 301 https://$server_name$request_uri;
를 추가해주면 되는것인지요?
(방금 return 301 https://www.도메인.com$request_uri;
이런식으로 2번째 블럭에 추가하니 안되더라구요~)
실제적인 처리명령어를 몰라 여쭈어 봅니다.
항상 늘 친절한 답변에 무한 감사드립니다.
네, 리다이렉트하는 명령은 그게 맞습니다. 다른 부분에 뭔가를 잘못 입력하셔서 제대로 적용이 안 되고 있거나, 정상적으로 설정을 바꾸신 후에도 브라우저 캐시 때문에 계속 잘못 리다이렉트되고 있을 수도 있습니다. (리다이렉트 설정 변경 테스트할 때는 반드시 시크릿모드로 새 창을 열어서 하세요. 301 리다이렉트 한 번 하면 영원히 캐시되거든요...)
편안한 밤 되세요~