크롬80버전 결제 이슈, 영카트5 주요패치 확인!

Node.js 실시간 채팅(원본 : 와칸다포에버님) > 그누보드5 플러그인

그누보드5
영카트5
매뉴얼
Q & A
제작의뢰
컨텐츠몰
부가서비스
소모임
커뮤니티

그누보드5 플러그인

그누보드는 여러가지 기능을 추가하기 쉽도록 제작 되었습니다.
플러그인 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y

Node.js 실시간 채팅(원본 : 와칸다포에버님) 정보

Node.js 실시간 채팅(원본 : 와칸다포에버님)

첨부파일

첨부파일 livechat_1.1.5.zip (26.6K) 75회 다운로드 2020-06-27 15:16:11 포인트 차감750
테스트한 버전5.3.3.3
호환 가능 버전모든버젼

본문

주의사항

익스플로러에서는 정상 작동 하지 않을 수 있습니다.
다른 브라우저를 사용해주세요.

 

와칸다포에버님 채팅을 조금 개조해서 배포합니다.

문제될시 삭제하겠습니다.

 

데모 http://livechat.choyunjin.kr (choyunjin.kr 로그인 필요)

 

설치하는법

그누보드외 추가준비물 : node.js

1.


create table `g5_livechat` (
    `lc_id` int not null auto_increment primary key,
    `lc_mb_id` varchar(1024) not null,
    `lc_msg` text not null,
    `lc_date` datetime not null
)default charset=utf8 engine=MyISAM;
 
create table `g5_livechat_banlist` (
    `lb_id` int not null auto_increment primary key,
    `lb_mb_id` varchar(1024) not null unique key,
    `lb_reason` text not null
)default charset=utf8 engine=MyISAM;

위 질의문 2개를 db서버에서 실행합니다.

(charset 부분과 engine 부분, 테이블 접두사(g5_) 부분은 자신에게 맞게 고쳐주세요)

 

2. 파일을 다운로드하고, chat 폴더를 그누보드루트에 올려줍니다.

3. node 폴더는 적당한 위치에 넣어줍니다.(혹은 안에있는 파일만 별도폴더로 옮기셔도 좋습니다)

4. 자신의 웹서버 컴퓨터에 ssh로 접속합니다.

5. 채팅서버파일(server.js,lib.js,config.js)이 있는 폴더로 이동합니다.

6.


npm install express mysql socket.io -- save

위 명령들을 모두 실행해줍니다.

 

7. config.js에서 db설정을 자신에게 맞게 수정해줍니다.

 

8. node server.js 명령을 실행합니다.(항상 실행은 screen 쓰세요)

9. 끝!(접속 : http://사이트주소/(그누보드루트/)chat)

 

기타 :

사용자 차단 : /ban 사용자명:사유 (: <-이거 꼭 넣어주셔야 합니다)

사용자 차단사유 수정 : /ban 차단된사용자명:바꿀사유 (이것도 ':' 넣어주셔야 합니다)

차단 해제 : /unban 사용자명

닉네임 강조 : @닉네임

굵은글씨 : *글씨*

밑줄 : _글씨_

기울임체 : [글씨]

링크 :

{url}

또는 {url}(보여줄 텍스트) (괄호를 }( 이렇게 붙여 써야 합니다)

또는 url앞에 타겟: 이렇게 붙일수도 있습니다(타겟앞에 _는 붙이지않습니다)

 

2020-05-07 15:40:48 Mysql 커넥션이 자동으로 끊기는 오류를 수정하여 재업 하였습니다.

2020-05-08 16:19:42 현재 접속자 표시 기능을 추가하여 재업 하였습니다.

2020-05-11 17:06:30 history 기능을 추가하여 재업 하였습니다.

2020-05-14 18:19:50 자신이 보낸 메시지의 css를 변경하여 재업 하였습니다.

2020-05-18 15:25:50 html 태그를 제거하는 구문 추가 + 일부 css 등을 변경하여 재업 하였습니다.

2020-05-26 22:42:22 사용자 차단 기능을 추가하여 재업 하였습니다.

2020-05-29 23:00:28 사용자 차단 해제 기능/node.js서버와 웹서버의 도메인이 다를 시 cors 오류 방지 코드를 추가하여 재업 하였습니다.

2020-06-07 20:57:55 각종 서식(굵은글씨 등)과 url링크, 사용자 닉네임 강조 기능을 추가하였습니다.

2020-06-27 15:16:10서식 부분 수정 후 재업 하였습니다. 링크서식을 #{(타깃:)링크}# 이(가) 아닌 {(타깃:)링크} 을 사용해주세요.

추천5

댓글 전체

autoset 찾아보니 웹서버를 세팅해주는 프로그램인거 같던데, 아마 node.js는 따로 까셔야 될거 같습니다.(오토셋은 잘 몰라서요...)
카페24에 문의하니 node.js 호스팅을 별도로 신청해야 한다는군요. 공용서버에 부담을주어 user들에게 피해를 줄 수 있다고 하네요.
node.js가 이미 설치되어 있는 가정 하에 설명하는 겁니다.
node.js 설치는
윈도우 : nodejs 사이트에서 인스톨러 받아서 깔면됩니다
리눅스 : vvvvvv
우분투 :
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs

centos (이것 외에 추가로 명령어를 실행해야 할수도 있습니다) :
curl -sL https://rpm.nodesource.com/setup_12.x | sudo bash -
이렇게 명령어를 실행하면 됩니다.
6번 구문은 node.js 폴더에서 추가 모듈을 설치하는 명령어입니다.
nodejs호스팅서버에 node폴더를 올려준뒤, screen등에서 node server.js 를 실행하시고 웹서버 그누보드루트에 chat폴더를 올려주시고, chat/js/common.js 파일의
... 'ws://'+location.hostname+':1121/ ...(1라인쯤에 있습니다)
에서 '+location.hostname+' 부분을 nodejs 호스팅서버 도메인주소(혹은 ip주소)로 수정하시고 접속하시면 될겁니다(node폴더의 config.js에서 DB설정을 자신에게 맞게 바꿔주세요)
node호스팅서버 따로 받았고 그누보드가 설치된 호스팅이 따로있는데
config.js의 db에서 그누보드 db를 가져오는데 이건 어떻게 처리하면될까요.
config.js의 db정보에는 node호스팅의 db를 셋했는데...
그누보드 가 올려진 사이트의 데이타는 어떻게 가져와야하는지 모르겟네요
여기설정부분이 이해가 가질않네요 .

function LivechatServerConfig(){
    this.db = new function(){ // db 설정
        this.host      = '127.0.0.1';  호스트부분은 아이피만 적으면 되는건가요?
        this.port      = 3306;    여기 포트부분이 ssh 접속할때 포트인가요 아님 아파치에 설정된 포트인가요?
        this.user      = 'ahhhhhh';
        this.password  = 'animalcrossinghagoshipeunde';
        this.dbname    = 'switchgaeopdda_ahhhhhh';  여기는 그누보드 db 네임을 적는건가요?
    }();
    this.main = new function(){ // 기본 설정
        this.port = 1121;  <--여기 포트는 어떤포트를 적는곳인가요? 아니면 건드리지않아도 되는건가요?
    }();
    this.table = new function(){ // 테이블 이름
        this.prefix  = 'g5_'; // 테이블 접두사
        this.member  = this.prefix+'member';
        this.livechat = this.prefix+'livechat';
        this.banlist = this.prefix+'livechat_banlist';
    }();
}
첫번째 port는 DB서버 포트이구요, 두번째 port는 socket서버 포트입니다.
dbname은 그누보드DB이름을 적는겁니다. host는 포트없이 ip나 도메인만 적으면 됩니다.
node호스팅과 웹호스팅을 받아서 node호스팅에
server폴더에 있는파일을 업로드하였고 웹호스팅에 그누보드와 chat 폴더를 업로드하였습니다.

node호스팅의 db접속은 웹호스팅에 해두었고, 채팅폴더에있는 common.js에
var socket = io.connect('ws://"+노드서버도메인+":1121/index.goza?mb_id='+mb_id);
처럼 해두었는데 안되네요..
저기 1121은 어떤포트인지 socket포트라면, socket 포트는 어디서 보나요..
socket.io.js?ver=20200427:2 GET 홈페이지도메인.com:1121/socket.io/?mb_id=admin&EIO=3&transport=polling&t=NBfVMW3 net::ERR_CONNECTION_TIMED_OUT

이렇게 나오면서 계속 서버연결이 실패했다고 나오는데.. 어디를 손봐야되는거죠 ㅜㅜ
혹시몰라서 1121 포트도 열고 다했는데 안되네요.. ㅜㅜ
네 ㅜㅜ 노드를 열었는데도 안되요
node server.js명령어후

Server is running. port: 1121
Mysql: Successfully connected.

이렇게 뜨면 되는거아닌가요?
1. 질의문(create table어쩌고 그부분)을 모두 복사한다.
2. DB클라이언트로 DB서버에 접속하고 (phpmyadmin 써도됨)그누보드가 설치된 db 선택 후 쿼리(query) 탭에 들어가서 그 내용을 붙여넣습니다.
3. g5_ ,myisam,utf8 부분은 각각 테이블접두사, db엔진(그대로 놔두셔도 되긴합니다),db 문자인코딩으로 수정합니다.
4. 실행합니다.
전체 341
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 (06212) 서울시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 대표메일:admin@sir.kr
사업자등록번호:217-81-36347 대표:홍석명 통신판매업신고번호:2014-서울강남-02098호 개인정보보호책임자:이총

© SIRSOFT