Skip to content

Waline ​

이전 문서: Waline 게시일: 2023-6-29 마지막 편집: 2026-5-12 원래 분류: 📩 댓글 플러그인 태그: Waline, NotionNext, 플러그인

👉

주의: 이 문서에서 소개하는 LeanCloud는 곧 서비스가 중단될 예정이므로 문서 내용이 오래되었습니다. Waline 공식 문서를 참고해 배포하세요.

Vercel Deployment

1. LeanCloud 등록 ​

Valine과 Waline은 모두 LeanCloud가 제공하는 클라우드 함수와 클라우드 데이터 저장 기능을 사용합니다. 일반 개발자라면 무료 버전으로 충분합니다.

😀 Zeabur 배포 방식을 사용한다면 LeanCloud를 별도로 등록할 필요가 없습니다.

APP ID와 APP Key 가져오기 ​

1. 먼저 로그인하거나 회원가입한 뒤 `LeanCloud` 콘솔에 들어가 왼쪽 아래의 앱 만들기를 클릭합니다.

image

2. 방금 만든 앱에 들어가 왼쪽 아래의 `설정` > `앱 Key`를 선택하고 `APP ID`와 `APP Key`를 확인합니다.

Untitled

2. Waline 배포 방식 ​

방식 1: Vercel 배포

이 방식은 현재 문제가 있을 수 있습니다. 아래 배포 이슈 설명을 참고하세요. 문제 원인은 공식 코드의 CORS 처리와 관련되어 있으며, 아직 완전히 해결되지 않았습니다.

Vercel 배포 이슈 설명

같은 문제가 발생할 수 있습니다. Vercel로 배포한 댓글 플러그인을 데스크톱에서 사용할 때 "네트워크 요청 오류, CORS 오류 때문에 Waline 서비스 요청이 허용되지 않음"이라는 메시지가 표시될 수 있습니다. Vercel 대시보드 로그에는 "응답 시간 초과"가 표시되고, 모바일 댓글에서도 Failed to fetch 오류가 발생할 수 있습니다.

가능한 원인은 두 가지입니다.

  1. URL 설정 오류입니다. 예를 들어 https://waline.tangly1024.com 끝에는 슬래시가 없어야 합니다.
  2. Vercel 또는 도메인 서비스 제공자 문제로 CORS 제한이 발생했습니다.

Untitled

  1. 이 링크를 클릭해 Waline을 원클릭 배포합니다.
2. 환경 변수 설정

Vercel 대시보드에서 방금 배포한 Waline 프로젝트로 이동한 뒤 Settings → Environment Variables를 찾습니다.

B60A41AC-6BC2-4F91-B3FB-FC742AD1BB27.png

환경 변수 LEAN_ID, LEAN_KEY, LEAN_MASTER_KEY 세 개를 설정합니다. 값은 이전 단계에서 LeanCloud에서 얻은 APP ID, APP KEY, Master Key에 각각 대응합니다.

Untitled

💡 주의:

LeanCloud 중국 내 버전을 사용한다면 LEAN_SERVER 환경 변수도 추가해야 합니다. 값은 연결한 도메인입니다. 그렇지 않으면 serverURL option is required for apps from CN region 오류가 표시될 수 있습니다. 자세한 내용은 이 Issue를 참고하세요.

마지막으로 프로젝트를 redeploy해 설정을 적용합니다.

Untitled

3. Waline 접근 주소 찾기

Vercel의 Overview에서 Visit을 클릭하거나 DOMAINS 아래의 도메인을 통해 Waline 서비스에 접근할 수 있습니다. 직접 도메인 매핑을 할 수도 있습니다. 문제가 있으면 공식 문서를 참고하세요.

Untitled

방식 2: Deta 배포

Vercel 서비스에 이상이 있다면 이 대체 배포 방식을 시도할 수 있습니다.

  1. 원클릭 배포를 클릭합니다. 가입하지 않았다면 먼저 가입하고 로그인해야 합니다.
  2. 관련 환경 변수를 설정하고 Deploy 버튼을 클릭해 배포합니다.

Untitled

  1. 배포 후 대시보드 오른쪽 위에서 접근 주소를 가져와 NotionNext에 설정합니다.

Untitled

방식 3: Railway 배포

이 방식은 블로거 D_super의 글 NotionNext Blog Waline Comment System을 참고하세요. 단계가 매우 자세합니다.

기타 배포 방식

공식 문서에 따르면 Vercel, Docker, Deta, CloudBase, Railway, Baidu Cloud Functions, Alibaba Cloud Functions 등 여러 배포 방식을 사용할 수 있습니다. 여기서는 Vercel과 Deta 두 가지 방식을 소개했습니다. 다른 방식은 공식 문서의 Server-side Introduction을 참고하세요.

배포 완료 ​

Waline은 그 자체로 독립적인 댓글 페이지이며 어떤 웹 페이지에도 임베드할 수 있습니다. 예를 들어 배포한 Waline 서비스를 서브도메인에 매핑하면 주소는 https://waline.tangly1024.com처럼 됩니다.

Waline 기타 사용자 정의 설정 ​

Waline은 많은 사용자 정의 설정을 지원합니다. 공식 문서를 참고하세요.

Server environment variables

환경 변수를 수정한 뒤에는 반드시 다시 배포해야 적용됩니다. Vercel에서는 Settings → Environment Variables에서 설정합니다.

  • 스팸 댓글 필터링
    Valine과 Waline 모두 Akismet의 스팸 댓글 필터링 기능을 사용할 수 있습니다. https://akismet.com에서 계정을 등록하면 무료 키를 받을 수 있습니다. Valine은 LeanCloud에 AKISMET_KEY 변수를 설정하고, Waline은 서비스 백엔드의 환경 변수에 설정합니다.

Untitled

  • 이메일 알림
    Valine-Admin을 함께 사용하면 몇 분 안에 관리 백엔드를 배포하고 Valine과 Waline의 이메일 알림을 지원할 수 있습니다. 배포 설정은 이 문서에서 자세히 다루지 않습니다. 공식 문서의 Cloud Engine one-click deployment 부분을 참고하세요.

💡 Waline의 네트워크 요청 안정성은 Valine보다 낮을 수 있습니다. Valine-Admin은 LeanCloud 백엔드에서 상세한 메일 발송 기록을 볼 수 있어 디버깅과 문제 추적에 편합니다.

  • LeanCloud 백엔드에서 메일 발송 상태를 확인하는 예시는 아래 이미지와 같습니다. 메일 발송에 실패해도 이곳에서 오류를 찾을 수 있습니다.

Untitled

3. NotionNext에서 Waline 설정 ​

NotionNext(버전 3.3.9 이상)에서 Waline을 켜려면 Vercel 환경 변수에 Waline 접근 주소를 추가합니다.

waline 접근 주소는 이전 단계에서 배포한 Waline 페이지 주소입니다. Waline은 독립적인 댓글 페이지입니다.

위 변수를 설정한 뒤 다시 배포하면 됩니다.

원문 링크 ​

https://docs.tangly1024.com/article/notion-next-waline