Extra Form
PHP PHP 7.4
CMS Rhymix 2.x

1번 사이트 : https://itreport.tistory.com/637

 

2번 싸이트 : https://www.wsgvet.com/bbs/board.php?bo_table=home&wr_id=639

 

ssl 인증을 위해 1번 싸이트를 따라 하다가 certbot-auto 방식? 이 잘 안되는 것 같아서

2번 사이트의 dns 인증 방식을 보고 키 설정 생성하고 이후에는  다시 1번 사이트를 보고

 

ngnix 의 default  파일을 수정 했습니다. 

 

몇 번의 에러를 모두 수정해서 nginx -t 로 오류도 없고 리스타트도 했는데 

연결이 안되네요. 

 

다음은 디폴트 파일 내용입니다. (하도 헤집어 놔서 엉망일수 있습니다)

 

##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# https://www.nginx.com/resources/wiki/start/
# https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/
# https://wiki.debian.org/Nginx/DirectoryStructure
#
# In most cases, administrators will remove this file from sites-enabled/ and
# leave it as reference inside of sites-available where it will continue to be
# updated by the nginx packaging team.
#
# This file will automatically load configuration files provided by other
# applications, such as Drupal or Wordpress. These applications will be made
# available underneath a path with that package name, such as /drupal8.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##

# Default server configuration
#
server {
    listen 443 ssl http2 default_server;
        listen [::]:443 ssl http2 default_server;
        server_name feedzone.club;

    ssl_certificate /etc/nginx/ssl/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;
    ssl_trusted_certificate /etc/nginx/ssl/fullchain.pem;
    include /etc/nginx/snippets/ssl.conf;

    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    #
    # Note: You should disable gzip for SSL traffic.
    # See: https://bugs.debian.org/773332
    #
    # Read up on ssl_ciphers to ensure a secure configuration.
    # See: https://bugs.debian.org/765782
    #
    # Self signed certs generated by the ssl-cert package
    # Don't use them in a production server!
    #
    # include snippets/snakeoil.conf;

    root /var/www/html;

    # Add index.php to the list if you are using PHP
    index index.php index.html index.htm index.nginx-debian.html;
        client_max_body_size 7M;   # 업로드 허용 용량
    
        include snippets/rhymix.conf;

}
    #location / {
     #   try_files $uri $uri/ =404;
     #   if (!-e $request_filename) { 
     #    rewrite ^.*$ /index.php last; 
     #  }

    # pass PHP scripts to FastCGI server
    

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny all;
    # }
# }


# HTTPS www. server configuration
server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name www.feedzone.club;

    ssl_certificate /etc/nginx/ssl/fullchain.pem;
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;
    ssl_trusted_certificate /etc/nginx/ssl/fullchain.pem;
    include /etc/nginx/snippets/ssl.conf;

    location / {
        return 301 https://feedzone.club$request_uri;
    }
}


# Default server configuration
server {
    listen 80;
    listen [::]:80 default_server;
    server_name feedzone.club;

    include /etc/nginx/snippets/letsencrypt.conf;

    location / {
        return 301 https://feedzone.club$request_uri;
    }
}

# HTTP - CNAME Connect www.feedzone.club to feedzone.club
server {
    listen 80;
    listen [::]:80;
    server_name www.feedzone.club;

    include /etc/nginx/snippets/letsencrypt.conf;

    location / {
        return 301 https://www.feedzone.club$request_uri;
    }
}

 

 

요렇게 했는데 뭐가 문제일까요..

 

  • Lv4

    추가로 아래 경로와 키 연결이 잘못 된 것을 발견하고 조금전에 수정했습니다. - 그래도 아직 연결은 안되네요.
    ssl_certificate_key /etc/nginx/ssl/privkey.pem;
    ssl_certificate /etc/nginx/ssl/fullchain.pem;
    ssl_trusted_certificate /etc/nginx/ssl/chain.pem;

  • Lv4

    특이한 부분은 dns 인증을 받은 클라우드플레이어 쪽에 총 3개의 도메인이 물려 있는데 나머지 두개는 그냥 도메인 자체에 자동으로 https 인증이 걸려져 있고 싸이트도 잘 작동이 되네요. 
    한 가지 의심 가는 곳은  아래 두 디폴트 파일의 차이점인데 서로 중복되는 것이 있으면 오류가 나서 

    대부분 enalbled 쪽 파일을 수정해줬다는 것입니다. 

    본문 내용에 삽입한 디폴트 파일은 available 파일의 디폴트 내용입니다. 

     

    스크린샷 2021-03-12 14.28.47.png

  • Lv4

    스크린샷 2021-03-12 14.36.00.png

    추가로 의심 되는 부분입니다. 

  • Lv36

    available에 있는 default 파일과 enabled에 있는 default 파일의 내용이 같은가요?
    우분투 기준으로 enabled에 있는 파일만 실제로 사용됩니다.

    두 파일이 심볼릭 링크로 연결되어 있어서 하나만 수정해도 다 적용되는 것이 정상이지만,

    FTP로 조작하면 심볼릭 링크가 깨져버리곤 해서...

  • Lv36 Lv4
    거의 같지만 중복되서 오류나는 부분은 지워줬습니다.
  • Lv4 Lv36

    거의 같지만이 아니라 완벽하게 같아야 합니다.

    헷갈린다면 차라리 available은 비어 있고 enabled 쪽에만 있는 편이 낫습니다.
    available에 무슨 내용을 넣더라도 적용되지 않습니다. enabled에 있는 것만 적용됩니다.

  • Lv36 Lv4
    완벽하게 같게 만들고 시도했는데 아직 안열리네요. 에러코드도 없고 어디서 잘못된것인지 찾기가 어렵군요;;
  • Lv36 Lv4

    편집하는 도중에 사라졌는지 라이믹스 깃허브 내용에서 추가할게 빠져있어서
    아래 내용을 다시 넣었는데 아직 사이트는 알열리네요.

    location ~ \.php$ {
    fastcgi_pass unix:/run/php/php7.4-fpm.sock; # PHP-FPM을 유닉스 소켓으로 연동하는 경우
    # fastcgi_pass 127.0.0.1:9000; # PHP-FPM을 로컬 포트로 연동하는 경우
    include snippets/fastcgi-php.conf;
    }

  • Lv4

    스크린샷 2021-03-12 17.12.13.png

    혹시 잘못된게 있는지 몰라서 nginx 상태도 올려 봅니다.

  • Lv4

    혹시 몰라서 키를 다시 만들어 보려는데 퍼미션 때문인지 삭제도 안되고 명령어를 재입력해도 아래와 같이 나타납니다.

     

    ubuntu@velomano-i:~$ sudo su

    root@velomano-i:/home/ubuntu# acme.sh --issue --dns dns_cf -d feedzone.club -d www.feedzone.club --key-file /etc/nginx/ssl/privkey.pem --fullchain-file /etc/nginx/ssl/fullchain.pem --cert-file /etc/nginx/ssl/chain.pem --reloadcmd "systemctl reload nginx.service"

    [Fri Mar 12 17:50:23 KST 2021] Domains not changed.

    [Fri Mar 12 17:50:23 KST 2021] Skip, Next renewal time is: Mon May 10 06:22:27 UTC 2021

    [Fri Mar 12 17:50:23 KST 2021] Add '--force' to force to renew.

    root@velomano-i:/home/ubuntu# 

  • Lv4

    어찌 하다보니 fullchain.pem 키 소스가 2개 있는데 이건 괜찮은건지 모르겠습니다. 아래것 삭제해보려고 하는데 삭제는 안되네요.

  • Lv4 Lv6
    해당 내용 수정된 사항입니다.
    이거대로 하시면 됩니다.

    https://koreanvlog.com/136/
  • Lv4 Lv6
    2.x 버전이시면 마지막에 이거 참고 하셔야 합니다.

    https://koreanvlog.com/209/
  • Lv6 Lv4

     

    알려주신 1,2번 페이지 모두 적용했는데 아직 연결이 안되네요;;;

    ssl 연결이 이렇게나 어렵군요 ㅜ ㅜ

     

     

    스크린샷 2021-03-13 12.40.27.png

    스크린샷 2021-03-13 12.40.15.png

     

  • Lv4 Lv6
    10번째줄에 내용이 링크주소 내용과 다른데요?
    include /etc/nginx/snippets/letsencrypt.conf;
  • Lv6 Lv4

    스크린샷 2021-03-13 13.28.23.png

     

    이 내용으로 되어 있는데 혹시 틀렸을까요? 

    본문글 내용중에 일부 싸이트와 다른 부분은 현재는  

    전체적으로 싸이트 내용 복사 넣고 수정을 해놓은 상태입니다. 

  • Lv4 Lv6
    만약에 SSL 인증이 안되신다면 인스턴트를 삭제하시고 처음부터 다시 한번 해보시는걸 추천드려요.
    3일전에 했을때 저는 문제가 없었거든요.
  • Lv6 Lv4
    덕분에 무사히 ssl 인증 연결에 성공 했습니다. 감사 합니다.
    Nginx - 502 Bad Gateway
    오류가 있는데 자세히 보니 fastcgi_pass unix:/run/php/php7.4-fpm.sock; 버전이 7.2로 되어 있었네요.
    저같은 초보를 위해 이 부분에 대해 변경 주의를 달아주시면 좋을것 같습니다.
  • Lv6 Lv4

    스크린샷 2021-03-13 16.14.33.png

    싸이트가 열려서 좋아 했는데 대시보드에 이런 에러가 뜨네요. 

    부지런히 써칭중인데 아직 답을 찾지는 못했습니다. 

  • Lv30
    뭔가 리디렉션이 반복되는거 같은데 클라우드플레어에 SSL 설정에 뭔가 오류가 있으신건 아닌지...
    클라우드플레어 CDN 해제 하시고 서버 자체로만 접속되게 해서 서버에 설치하신 SSL 을 검증 해보시는게 어떠실지...
  • Lv30 Lv4
    클라우드 플레이어 해제하고 나니 정상작동 합니다. ㅜ ㅜ 감사 합니다.
  • Lv4 Lv6
    잘 해결되셔서 다행이십니다^^
  • Lv6 Lv4

    스크린샷 2021-03-13 17.51.54.png

    두번째 페이지 보고 일부 내용 수정했는데 혹시 여기 설정에 문제가 있는지 확인 부탁드릴게요.

    특히 18번에 에러가 뜨네요.

     

  • Lv4

    스크린샷 2021-03-13 18.07.41.png

     

    드디어 원인을 찾았습니다. 라이믹스 에러는 설정 파일에서 ssl항상사용(권장)을 놓으니 해결 되었습니다.

     

    모든 문제 해결 완료. 댓글 주신분들 모두 감사 드립니다.