그누보드는 국산 설치형 무료 게시판입니다.
https://www.wsgvet.com현재 제가 메인 홈페이지로 쓰고 있는 중이기도 합니다.
제 홈페이지는 현재 그누보드 5.3
이지만 테마만 괜찮은게 나오면 5.4
로 넘어갈 예정입니다.
무료 홈페이지 주소 받기
https://blog.wsgvet.com/free-homepage-address-freenom클라우드 플레어 가입 및 네임서버 변경하기
https://blog.wsgvet.com/cloudflare-sign-in-and-change-nameserver구글 클라우드 플랫폼 가입, 도메인 연결, Nginx 설치
https://blog.wsgvet.com/sign-in-google-cloud-platform-and-connect-domain-and-hello-world구글 클라우드 컴퓨트 엔진에서 우분투 기본 설정하기
https://blog.wsgvet.com/google-cloud-compute-engine-ubuntu-basic-setting우분투 20.04 LTS에 MariaDB 설치하기
https://blog.wsgvet.com/ubuntu-2004-install-mariadb/위 5개 글에 따라 따라오셨다면 이제 이 글을 보시면 됩니다.
구글 클라우드 플랫폼의 무료 서버 성능에서는 ghost 플랫폼과 그누보드를 동시에 운용하기에는 조금 벅찰 수 있습니다.
그래서 ghost
를 설치할땐 node.js
설치만 했습니다.
다만 그누보드
나 워드프레스
같은 경우 php
로 구동되기 때문에 php
를 따로 설치해야 합니다.
그래서 node.js
와 완전히 독립적으로 이 설치기를 작성합니다.
위 명령어로 패키지를 설치합니다.
조금만 기다리면 설치가 완료됩니다.
위 명령어로 재부팅시에 자동 시작되게 합니다.
위 명령어로 실행합니다.
위 명령어로 들어가면 엄청나게 많은 글의 내용이 나오는데요.
위 항목을 찾아서 다 바꿔줍니다.
찾는 방법은 컨트롤 + W
누르면 밑에 검색창이 나오는데, 앞부분을 복사해서 붙여넣고 엔터를 치면 찾아집니다.
예를들어 short_open_tag
를 바꾸고 싶다면 short_open_tag
를 넣고 엔터를 치면 해당부분으로 갑니다.
참고로 short_open_tag
는 처음 검색하면 설명 부분이 나오는데 한번더 검색하면 제대로 나옵니다.
cgi.fix_pathinfo
는 아마도 ;cgi.fix_pathinfo = 1
이렇게 되어있을텐데요. 앞에 ;
은 주석으로 처리한다는 뜻이므로 이것도 빼야겠죠.
즉 ;cgi.fix_pathinfo = 1
을 cgi.fix_pathinfo = 0
이렇게 바꿔줘야 하는 것입니다.
그 뒤에 수정하면 됩니다.
참고로 upload_max_filesize
와 post_max_size
는 파일 업로드 용량과 매우 높은 관계가 있습니다.
업로드할 파일 크기가 크다면 100M
이상으로 해주셔도 됩니다.
그리고 밑에 Nginx
설정에서도 하나 더 변경해줘야 됩니다. 따로 설명드리겠습니다.
전부 찾아서 다 바꾼 후
컨트롤 + O
, 엔터
, 컨트롤 + X
를 누르면 저장 후 빠져나와집니다.
위 명령어로 설정을 적용해줍니다.
위 명령어로 DB
에 접속합니다.
위 명령어로 gnuboard
라는 DB를 만듭니다.
위 명령어로 gnuuser
라는 DB
사용자를 만듭니다.
yourpassword
부분은 원하는 비번으로 꼭 수정하세요!
위 명령어로 gnuuser
가 gnuboard
라는 DB의 모든 권한을 얻습니다.
위 두 명령어로 저장 후 나갑니다.
위 명령어로 그누보드 파일이 들어갈 폴더를 생성합니다.
위 명령어로 방금 생성한 폴더의 권한을 지금 로그인한 계정으로 변경해줍니다.
위 명령어로 폴더로 이동합니다.
위 명령어로 그누보드 최신버전을 다운 받습니다.
위와 같이 현재 폴더에 압축을 풉니다.
위 명령어로 압축파일을 삭제합니다.
이제 권한을 수정해야 합니다.
그누보드의 폴더 포함 모든 파일 및 폴더의 권한을 755로 줍니다.
data
폴더를 생성합니다.
data
폴더의 권한을 707
로 줍니다.
data
폴더의 소유권을 www-data
에게 줍니다.
위 명령어로 설정파일로 들어갑니다.
29번째줄에 보면
위 내용이 있습니다. 접속할 주소를 설정하는 곳입니다.
우리는 이미 SSL 인증서를 가지고 있기 때문에 둘다 같은 https 주소를 넣습니다.
예를들어 홈페이지 주소가 example.com
이라면
위와 같은 형식으로 넣고 저장하면 됩니다.
40번째 줄에
위와 같이 utf8
을 utf8mb4
로 바꿔줍니다. 이모지를 제목과 본문, 댓글에 표시할 수 있습니다.
그누보드 파일 설정은 이제 끝입니다.
위 명령어로 설정파일 만들기에 들어갑니다.
위 내용을 그대로 복사 후 붙여넣기 해줍니다.
컨트롤 + O, 엔터, 컨트롤 + X 엔터를 누르면 저장 후 빠져나옵니다.
먼저 Nginx
설정파일부터 만듭니다.
위 명령어로 Nginx
설정파일을 만들고 들어갑니다.
위 내용에서 example.com
부분을 자신의 도메인으로 바꿔주세요.
참고로 업로드 용량을 100MB 이상을 원하신다면 client_max_body_size 100M;
를 client_max_body_size 1000M;
와 같이 뒤에 숫자를 변경해주면 됩니다.
그리고 컨트롤 + O, 엔터, 컨트롤 + X 엔터를 누르면 저장 후 빠져나옵니다.
위 명령어로 설정파일을 활성화되게 해줍니다.
위 명령어로 기존 활성화된 default
서버 링크만 삭제해줍니다.
위 명령어로 설정에 이상이 없는지 확인합니다.
위와 같이 ok
와 successful
이 나오면 성공입니다.
위 명령어로 nginx를 재시작 해줍니다.
이제 python3-certbot-nginx
를 통한 SSL
인증서 발급을 위한 준비는 끝났습니다.
위 명령어로 Nginx
와 연결할 수 있는 certbot
을 설치합니다.
이제 위와 같은 형식으로 자신의 도메인과 www.도메인에 SSL 인증서 생성을 시작합니다.
위와 같이 인증서 갱신 및 보안 공지 등을 받을 이메일 주소를 입력합니다.
A
를 입력하고 엔터를 누릅니다.
이메일 주소를 공유하고 싶다면 y
, 그렇지 않다면 n
을 입력하고 엔터를 누릅니다.
위와 같이 인증서가 발급됩니다. HTTP를 전부 HTTPS로 리다이렉트 하는 것이 좋습니다. 2
를 입력하고 엔터를 누르면 됩니다.
위와 같이 매우 쉽게 발급이 되었고, Nginx도 재기동되어 이제 주소창에 자신의 주소를 입력하면 바로 https로 접속되는 것을 확인할 수 있습니다.
정말 쉽죠?
위 명령어를 내리면
위와 같이 나오는 것을 확인할 수 있습니다. 즉 하루에 2번씩 자동으로 갱신 체크를 해줍니다.
위 명령어를 내리면
위와 같이 Congratulations, all renewals succeeded.
내용이 뜨면 갱신에 문제가 없다는 뜻입니다.
이제 주소창에 설정한 주소 를 넣어보세요.
위와 같이 뜬다면 성공입니다.
그누보드5 설치하기를 누릅니다.
동의합니다 -> 다음
위와 같이 셋팅하면 됩니다.
MySQL
정보는 아까 같이 만들었던 그 계정을 넣으면 됩니다.
밑에 최고관리자는 100% 원하시는대로 만들면 됩니다
참고로 회원 ID에 admin으로 되어있는데 바꿔주시는게 보안에 좋습니다.
다 적은 후 다음을 누르면
위와 같이 나오면 드디어 끝입니다.
새로운 그누보드5로 이동을 누르면!
위와 같이 초기화면이 나오면서 완성되었습니다!
감사합니다!