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

본문
그누보드 기본 기능인 금지 메일 설정을 응용하여, 특정 이메일 도메인만 회원가입할 수 있도록 라이브러리 코드를 수정하고 관리자 환경을 설정하는 방법을 안내합니다.
그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하는 방법
그누보드 회원가입 시 특정 이메일 도메인만 허용하도록 제한하려면 원본 파일인 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함수 로직을 다시 확인하십시오.
함께 보면 좋은 글
참고자료
기타 참고자료
- 이전글그누보드 본문 이미지 클릭 시 원본 이미지 새창 열림 방지 설정 방법 26.09.14
- 다음글스마트에디터2 이미지 업로드 시 이미지 간 여백 추가하기 26.09.14
댓글목록
등록된 댓글이 없습니다.