안녕하세요.

 

다름이 아니라 몇일간 삽질을 했는데도 답이 안나와 질답게시판에 글을 올리게 되었습니다.

 

웹 호스팅과 도메인 이전을 작업중인데요~

 

기존에 사용하던 xe를 rhymix 2.0으로 업그레이드 작업을 하고 있습니다.

 

새로운 서버는 카페24의 리눅스 가상호스팅을 임대해서 우분투 20.04 LTS, NGINX 1.18, PHP7.4.3, MariaDB 10.3.34, Let's Encrypt의 OpenSSL을 설치해놓은 상태구요.

 

업그레이드 방법은 기존 xe를 운영하던 서버에서 파일과 DB를 백업하여 새로운 서버에 복원한 다음, 라이믹스를 덮어씌우는 방식으로 작업을 하고 있습니다.

 

문제가 되는 현상은 https://autolabs.co.kr로 접속을 시도하면 웹브라우저에 "ERR_TOO_MANY_REDIRECTS" 메시지와 함께 리디렉션한 횟수가 너무 많다고 메시지가 뜹니다.

 

그런데 관리자 페이지인 https://autolabs.co.kr/admin 로 접속을 하면 정상적으로 관리자 계정으로 로그인이 됩니다.

 

저는 의심되는 부분이 NIGNX의 server 블록 설정을 잘못한것 같아서 몇일째 이래저래 수정해보고 있는데 실마리가 보이지 않아 이렇게 도움을 구하게 되었습니다.

 

아래는 xetown의 팁 게시판에서 검색한 내용을 참조하여 작성한 NIGNX sites-available의 설정 파일 전체 내용 입니다.

 

server {
     listen 443 ssl http2;
     server_name autolabs.co.kr;
     root /home/autolabs;
     index  index.php;
     charset utf-8;

     # XE rewrite 설정
     client_max_body_size 32m;
     include snippets/rhymix.conf;   # 라이믹스 rewrite 규칙 인클루드

     # PHP-FPM 연동 설정
     location ~ \.php$ {

          include                         /etc/nginx/fastcgi_params;
          fastcgi_pass                    unix:/run/php/php7.4-fpm.sock;
          fastcgi_index                   index.php;
          fastcgi_cache                   RHYMIX;                
          add_header X-Cache              $upstream_cache_status;
          fastcgi_split_path_info ^(.+?\.php)(/.*)$;
          if (!-f $document_root$fastcgi_script_name) {                        
               return 404;                
          }
     }

     # SSL 인증서 설정
     #listen 443 ssl; # managed by Certbot
     ssl_certificate /etc/letsencrypt/live/autolabs.co.kr/fullchain.pem; # managed by Certbot
     ssl_certificate_key /etc/letsencrypt/live/autolabs.co.kr/privkey.pem; # managed by Certbot
     include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
     ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

 

server {
     listen 443 ssl http2 default;
     server_name www.autolabs.co.kr;

     location / {
          return 301 https://autolabs.co.kr$request_uri;
          expires epoch;
     }

     # 이곳에서는 사이트 경로 설정이나 XE 설정, PHP 연동 설정 등을 하지 않음

     # SSL 인증서 설정은 위와 동일하게 해야 함
     #listen 443 ssl; # managed by Certbot
     ssl_certificate /etc/letsencrypt/live/autolabs.co.kr/fullchain.pem; # managed by Certbot
     ssl_certificate_key /etc/letsencrypt/live/autolabs.co.kr/privkey.pem; # managed by Certbot
     include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
     ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

 

server {
     listen 80 default;
     server_name autolabs.co.kr www.autolabs.co.kr;

     location / {
          return 301 https://autolabs.co.kr$request_uri;
          expires epoch;
     }

     # 이곳에서는 사이트 경로 설정이나 XE 설정, PHP 연동 설정 등을 하지 않음

     # 단, Let's Encrypt 인증서 발급을 위해 /.well-known/ 폴더는 특별 처리해도 무방함
}

 

 

 

화면 캡처 2022-08-02 204111.png

 

 

 

화면 캡처 2022-08-02 204048.png

 

참고로 기존에 운영하던 xe는 ssl이 적용안하고 운영했습니다. 보안성 강화를 위해 라이믹스로 업그레이드하고 ssl을 적용하려고 합니다.

 

도움 좀 부탁드리겠습니다.( _ _)

 

 - 김효복 드림

  • profile

    fastcgi_cache 설정부터 제거해 보세요.

    X-Cache: HIT이라는 헤더가 나오는 것으로 보아

    캐싱된 응답을 반복하고 있는 것 같습니다.

  • profile profile
    기진곰님 빠른 답변 감사합니다!
    넵 말씀하신데로 한번 조치 해보겠습니다!
  • profile profile
    기진곰님 감사합니다!
    fastcgi_cache 설정 부분만 제거하니까 정상적으로 메인 페이지에 접속 되었습니다.
    정말 감사합니다!