BOARD

팁·활용

그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하는 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 29회 작성일 26-09-14 12:06

본문

그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하는 방법

그누보드 기본 기능인 금지 메일 설정을 응용하여, 특정 이메일 도메인만 회원가입할 수 있도록 라이브러리 코드를 수정하고 관리자 환경을 설정하는 방법을 안내합니다.

그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하는 방법

그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하려면 원본 파일인 lib/register.lib.php를 수정해야 합니다.

수정 파일 백업 및 사전 준비

코드를 수정하기 전에 원본 파일인 lib/register.lib.php를 반드시 백업해 두어야 합니다. 문제가 발생했을 때 즉시 원래 상태로 복구할 수 있도록 준비한 뒤 작업을 진행하세요.

코드 수정 방법

lib/register.lib.php 파일에서 금지 메일 도메인을 검사하는 함수를 찾아 로직을 변경합니다.

// 금지 메일 도메인 검사 함수를 허용 검사로 변경
function prohibit_mb_email($reg_mb_email) {
    global $config;
    list($id, $domain) = explode("@", $reg_mb_email);
    $email_domains = explode("\n", trim($config['cf_prohibit_email']));
    $email_domains = array_map('trim', $email_domains);
    $email_domains = array_map('strtolower', $email_domains);
    $email_domain = strtolower($domain);
    if (in_array($email_domain, $email_domains))
        return "";
    else
        return "$domain 메일은 사용할 수 없습니다.";
}

관리자 환경설정 변경

코드를 수정한 후 관리자 페이지의 환경설정 및 기본 환경설정 메뉴로 이동합니다. 입력 금지 메일 항목에 가입을 허용할 이메일 도메인을 줄바꿈으로 입력하여 저장합니다. 안내 문구는 기존 금지 문구로 표시될 수 있으나 실제 동작은 허용 목록 기준으로 작동합니다. 문구 자체를 변경하려면 /adm/config_form.php 파일을 수정할 수 있습니다.

적용 후 확인 및 복구

설정을 마친 후 허용된 도메인과 차단된 도메인의 이메일 주소로 각각 회원가입을 시도하여 정상적으로 제한되는지 확인합니다. 만약 의도대로 동작하지 않거나 오류가 발생할 경우, 사전에 백업해 둔 lib/register.lib.php 파일을 원위치에 업로드하여 원래 상태로 복구할 수 있습니다.

lib/register.lib.php 파일 코드 수정 방법

lib/register.lib.php 파일에서 금지 메일 도메인을 검사하는 함수를 찾아 로직을 허용 검사 방식으로 변경합니다.

// 금지 메일 도메인 검사 함수를 허용 검사로 변경
function prohibit_mb_email($reg_mb_email) {
    global $config;
    list($id, $domain) = explode("@", $reg_mb_email);
    $email_domains = explode("\n", trim($config['cf_prohibit_email']));
    $email_domains = array_map('trim', $email_domains);
    $email_domains = array_map('strtolower', $email_domains);
    $email_domain = strtolower($domain);
    if (in_array($email_domain, $email_domains))
        return "";
    else
        return "$domain 메일은 사용할 수 없습니다.";
}

위 코드는 설정에 입력된 도메인 목록과 일치할 때 통과시키고, 그렇지 않으면 사용할 수 없다는 메시지를 반환하도록 변경하는 예시입니다.

관리자 페이지 설정 방법

코드를 수정한 후 그누보드 관리자 페이지에서 허용할 도메인 목록을 등록해야 합니다.

  • 이동 경로: 관리자 페이지의 환경설정 및 기본 환경설정 메뉴로 이동합니다.
  • 설정 항목: 입력 금지 메일 항목에 가입을 허용할 이메일 도메인을 줄바꿈으로 입력하여 저장합니다.
  • 참고사항: 안내 문구는 기존 금지 문구로 표시될 수 있으나 실제 동작은 허용 목록 기준으로 작동합니다. 문구 자체를 변경하려면 /adm/config_form.php 파일을 수정할 수 있습니다.

적용 후 확인 및 복구 방법

설정을 모두 마친 후에는 정상적으로 제한이 동작하는지 검증하고, 문제 발생 시 안전하게 되돌리는 단계를 거쳐야 합니다.

1. 회원가입 테스트를 통한 확인

  • 허용된 도메인의 이메일 주소와 차단된 도메인의 이메일 주소로 각각 회원가입을 시도합니다.
  • 설정한 조건에 따라 정상적으로 가입이 통과되거나 제한되는지 확인합니다.

2. 오류 발생 시 복구

  • 의도대로 동작하지 않거나 오류가 발생할 경우, 작업 전에 사전에 백업해 둔 lib/register.lib.php 파일을 원위치에 업로드하여 원래 상태로 복구합니다.

관리자 안내 문구 변경 방법

관리자 페이지의 안내 문구 자체를 수정하려면 /adm/config_form.php 파일을 변경할 수 있습니다.

코드를 수정하고 환경설정에서 허용할 도메인 목록을 입력한 뒤, 안내 문구를 운영 목적에 맞게 바꾸고 싶을 때 해당 파일을 수정하여 반영할 수 있습니다.

상황별 판단 및 행동 가이드

내 상황선택 기준다음 행동
코드 수정 시작 전원본 파일 보존 필요lib/register.lib.php 파일을 별도 경로에 백업
코드 수정 및 설정 완료 후허용 도메인 적용 여부 확인허용/차단 도메인으로 각각 회원가입 테스트 수행
설정 후 오류 발생 시즉각적인 서비스 정상화백업해둔 lib/register.lib.php 파일을 원위치에 복구

실전 FAQ

Q. 관리자 페이지의 안내 문구가 '금지'로 표시되는데 수정 가능한가요?

  • 대안: 로직은 '허용'으로 작동하지만 안내 문구는 기본 설정값을 따릅니다. 문구 변경이 필요하다면 /adm/config_form.php 파일을 직접 수정하여 운영 목적에 맞게 변경할 수 있습니다.

Q. 설정 후 회원가입이 아예 되지 않는다면?

  • 예외: 도메인 목록 입력 시 줄바꿈이 제대로 적용되지 않았거나, 코드 수정 중 오타가 발생했을 가능성이 큽니다. 우선 백업본으로 복구한 뒤, lib/register.lib.php의 prohibit_mb_email 함수 로직을 다시 확인하십시오.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.