IT [그누보드] 버전 업데이트 정리
페이지 정보

본문
(1) 그누보드 최신버젼을 통째로 업로드 후 커스터마이징 반영하는 방법
1. 그누보드 홈페이지에서 최신버젼의 그누보드 다운로드
2. 그누보드 폴더에 그대로 붙여넣기
3. theme -> basic -> tail.php 수정 -> 소유하신도매인, 회사소개를 소개로 변경
head.php 에서 최근검색어 수정, index.php에서 최신글 불러오는 게시판 수정
4. logo.png 수정 -> 배경색이 있으면 그림판 스포이드로 잘 찍어서 수정
5. 메일서버 구축
ㄱ. config.php 수정
// SMTP
// lib/mailer.lib.php 에서 사용
define('G5_SMTP', '127.0.0.1');
이 세줄을
// SMTP
// lib/mailer.lib.php 에서 사용
//define('G5_SMTP', '127.0.0.1');
define('G5_SMTP', 'smtp.gmail.com');
이 4줄로 변경 + 포트를 465 포트로 변경
=> 최종 결과
// SMTP
// lib/mailer.lib.php 에서 사용
//define('G5_SMTP', '127.0.0.1');
define('G5_SMTP', 'smtp.gmail.com');
define('G5_SMTP_PORT', '465');
+ Gmail 설정변경(https://www.google.com/settings/security/lesssecureapps) -> 보안수준 낮은 앱 사용설정
ㄷ. mailer.lib.php 수정
$mail = new PHPMailer(); // defaults to using php "mail()"
if (defined('G5_SMTP') && G5_SMTP) {
$mail->Host = G5_SMTP; // SMTP server
$mail->Port = 465; //set the SMTP Port
$mail->IsSMTP();
$mail->SMTPAuth = true; //enable SMTP authentication
$mail->SMTPSecure = "ssl"; //sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; //set GMAIL as the SMTP server
$mail->Port = 465; //set the SMTP port for the GMAIL server
$mail->Username = "aaa@gmail.com"; //GMAIL Username
$mail->Password = "비밀번호"; // GMAIL Password
-> 여기서 팁은 비밀번호가 유출될 가능성이 있으므로 구글 보안 인증2단계를 인증받은 후, 앱비밀번호(무작위 영어로 된 16자리의 비밀번호)를 메일-윈도우 조합으로 발급받은 후 이 16자리를 사용하면 원래의 비밀본호를 사용하지 않고도 로그인할 수 있다는 점이다
ㄹ. 기존의 plugin -> PHPmailer_v2.0.4 를 사용하지 않는 방법이다. 그 폴더를 통째로 없애도 메일테스트는 성공한다. 즉, 구글메일을 이용한 메일테스트에 필요한 php파일은 단 두개 -> gmail의 정보를 바탕으로 config.php 와 mailer.lib.php 만 수정하면 된다.
ㅁ. NAS에서 OPENSSL을 지원해야함
ㅂ. 관리자모드에서 메일테스트 수행해서 메일서버가 정상동작하는지 확인
ㅅ. 시놀로지 자체 메일서버인 mailplus를 활용할 수도 있지만 가정에서는 고정IP를 신청하기에는 비용적인 문제가 발생할 뿐만 아니라, 시놀로지의 DDNS를 이용하고 단순히 포트포워딩을 하는 상황이라면 DNS수정과 SPF등록이 상당히 까다롭기 때문에 화이트 도메인에 등록하기가 힘든 상황이다. 따라서, 그냥 마음편히 구글의 SMTP를 이용하는 것이 낫다.
5. html purifier 필터링 주석처리
기본적으로 그누보드에서 제공하는 기본세팅에서는
html purifier 필터링이 적용되어 있음
따라서 기본세팅에서는 게시판에
비디오태그나 오디오태그를 삽입할 수 없게됨
따라서 html purifier 필터링을 해제해야 함
gnuboard5/lib 폴더안에 있는 common.lib 파일에서
아래의 두 줄을 주석처리 하면 됨
// if($filter)
// $content = html_purifier($content);
주석처리하는 방법은 줄의 맨앞에
// <- 이렇게 사선 두개를 그어주시면 됨
비디오태그 예시 : <video src="파일경로" width="360" height="360" controls>
6. 회원탈퇴버튼 추가
-> register_form.skin.php 수정
7. 캡챠 이미지가 보이지가 않을때
config, common.lib 파일 등을 수정할때, 에디트플러스를 이용하여
UTF-8 + BOM 으로 저장된 파일을 찾아서 UTF-8 형식으로 저장해 주는 것임
(하지만, 메모장 대신 Atom에디터를 사용해서 편집한다면 이럴일이 거의 없음)
8. head.php, tail.php 등 에서 인기검색어 삭제 -> 불필요한 기능
접속자집계는 /theme/basic/tail.php에서 <?php echo visit('theme/basic'); 부분을 삭제
인기검색어는 /theme/basic/head.php에서 <?php echo popular('theme/basic'); 부분을 삭제
-> PC버전과 모바일버전 폴더에서 각각 삭제할 것
9. 소개 -> 타임라인에서 업데이트 사항 반영할 것
10. 그누보드 서버이전시
ㄱ. 일단은 webserver 폴더 통째로 복사해서 백업하기, 그다음 가장 중요한 mysql DB를 백업해서 새 서버에 옮겨야함(게시글을 백업하는 과정)
ㄴ. MY SQL DB백업
myphpadmin -> 데이터베이스 -> gb 폴더 들어가서 파일 전부 체크하고 내보내기
ㄷ. db 복구
myphpadmin 새로 설치하고, gb폴더 새로 만들고 거기서 백업파일 가져오기
ㄹ. 필요시 apache -> gnuboard5 -> data -> dbconfig.php 에서 mysql 정보 수정
ㅁ. iptime nas로 그누보드5 설치했을 경우 apche 폴더에 있으면 복구가 제대로 안됨
경로가 /apps/gnuboard5 이기 때문 -> gnuboard5를 apps폴더에 넣자.
11. 그누보드 글자 수 제한 해제 -> bbs/write_update.php 수정할것
12. head.sub.php -> <head> 태그 안에 들어갈 메타태그와 각종 태그를 네이버웹마스터도구 웹페이지 최적화를 참고해서 입력
13. 게시글 분류 일괄변경 플러그인 적용, 분류변경버튼추가, 게시글 순서이동버튼추가
-> list.skin.php
(2) 그누보드 패치파일만 받아서 수정사항만 반영하고, 커스터마이징한 부분은 유지하는 방법
변경된 코드만 깃허브에서 참고해서 커스터마이징한 부분은 그대로 냅두고 그누보드의 원본만 수정한다 -> 일일이 수정된 부분을 다 찾아서 해야하기 때문에 시간이 오래걸리고 여러 버전을 뛰어넘는 것이 불가능하고 버전을 하나하나씩 올려야하는 단점이 있지만, 커스터마이징한 부분을 그대로 유지할 수 있다는 장점이 있다
-> 보통 common.lib.php 가 변동사항이 많은데 그냥 덮어쓰고 html purifier 만 주석처리하는 게 편하다
-> 그리고 config.php 는 보통 버전정보를 입력하는 간단한 업데이트밖에는 없다
=> 뛰어넘어야 할 버전이 너무 많다면 (1) 방법을 적용하고, 하나하나씩 천천히 버전을 올릴 시간이 있다면 (2) 방법을 적용한다
- 이전글[그누보드] 시놀로지NAS에 그누보드5 설치하기 20.09.07
- 다음글[그누보드] 모바일에서도 DHTML에디터 사용하는 방법 20.09.07
댓글목록
등록된 댓글이 없습니다.