웹마스터 팁

제로보드 사용 당시 회원 중 상당수가 숫자로 시작하는 아이디를 가지고 있는데 xe로 만든 새 홈페이지에 로그인 불가능하다는 사실을 최근에야 알았습니다. 해결방안을 검색한 결과 다음 방법이 있었습니다.
(2008.1.10)  숫자 아이디 사용법 slick

그러나 현재 1.7.5.4 에서는 아무런 효과가 없었습니다. 숫자로 시작하는 아이디로 로그인 시도하면 아이디 첫글자는 문자로 시작해야 된다는 경고팝이 뜰 뿐입니다.

 xe 코드를 그냥 분석하고 실험으로 알아낸 해결방법은 다음과 같습니다. XE 에서 로그인 아이디를 두번 검사하고 있으며 각각 경고창을 띠워 주고 있었습니다.

1)  파일: ./common/js/xml_js_filter.js 
  • 수정내용
수정위치: 라인번호 26, //predefined rules 에서 userid 지정하는 라인
수정 전 :  'userid' => '/^[a-z]+[\w-]*[a-z0-9_]+$/i'
수정 후 : 'userid' => '/^[0-9a-zA-Z]+[\w-]*[a-z0-9_]+$/i'
  • 수정방법

최신버전 xe에서는 압축유틸리티 minify를 이용하고 있었습니다. 수정해야 할 대상은 xml_js_filter.js 이지만 실제로는 xe.js 로 합친 후 minify로 압축한 xe.min.js을 변경해 주어야 xe 에 실제로 반영되는 것입니다.

xe.js는 common.js + js_app.js + xml_handler.js + xml_js_filter.js 를 합친 것이며, xe.js 를 minify로 압축하여 만들어 진 것이 xe.min.js입니다. 실제 실행시 사용되는 파일은 xe.min.js이므로 xml_js_filter.js를 수정한 후에 minify를 이용하여 xe.min.js를 만들어 주어야 한다.

(1) xml_js_filter.js와 xe.js에서 동일하게 [0-9a-zA-Z]와 같이 수정해 주고

(2) minify를 다운로드 받아서 홈페이지에 설치하고

(3) minify를 실행시켜 xe.min.js를 만들어 주었습니다.

  • 수정결과

위와 같이 수정한 결과 로그인시 경고창이 없어졌지만 2차로 상단에 같은 경고문으로 잠시후 사라지는 경고창이 떳습니다. 물론 로그인도 안되면서... 다시 xe를 분석하여 다음 사항을 찾아 수정하게 되었습니다.

2)  파일: ./classes/validator/Validator.class.php 

  • 수정내용
수정위치: 라인번호 90, //predefined rules 에서 userid 지정하는 라인
수정 전 : 'userid' => '/^[a-z]+[\w-]*[a-z0-9_]+$/i'
수정 후 : 'userid' => '/^[0-9a-zA-Z]+[\w-]*[a-z0-9_]+$/i'
  • 수정결과

위와 같이 수정한 결과 로그인시 2차 경고창이 없어지고 정상적인 로그인이 가능하게 되었습니다. 코드를 보면 수정하기 전에는 아이디 첫글자는 반드시 영문 소문자만 가능하도록 되어 있었습니다. 수정후에는 숫자, 영소문자, 영대문자로 시작하더라도 로그인과정을 통과할 수 있게 되었습니다.

 

제목 글쓴이 날짜
Ubuntu 웹서버 구축 2. APM 환경 구축 [4] [1] earthian 2008.05.23
Ubuntu 웹서버 구축 1. 우분투 설치 하기 [4] file earthian 2008.05.23
한방에 제로보드 설치를 위한 서버 환경 준비하기-RWAPC Server 1.0 [6] 야라바 2007.11.28
SVN Commit 정보 출력 설정 (CIA Script) DroArc 2007.11.25
phpCubAdmin으로 큐브리드 DBMS관리하기 [2] 야라바 2007.10.22
MySQL 5.0 이상 버전에서 Myadmin 접근시 문제 해결 [6] 니케 2007.03.16
Message 탭 (servu4.0) 이성헌 2005.12.15
Activity -> user - 접속차단 위주로 설명 (servu4.0) 이성헌 2005.12.15
FTP 서버셋팅 (servu4.0) 이성헌 2005.12.15
Setup Wizard 를 이용한 FTP 서버 설정 (servu4.0) [1] 이성헌 2005.12.15
mysql 사용법 요약 정리 이성헌 2005.12.15
iis+php+mysql+zeroboard 설치 [3] 이성헌 2005.12.15
원격접속데스크톱 XP이전버젼에서도 된다~! [5] 류진곤 2005.01.23
IIS에서 아웃로그인,최근게시물이 htm,html 에선 안돼고 php에서만 될때 해결방법 [4] kyjzz 2004.07.01
왕초보를 위한 APM설치기...^^; [2] 웰치스 2004.06.29
IIS6.0+PHP4.3.3+MySql4.0.18+제로보드4.1 pl4 [10] 류진곤 2004.06.08
iis에서 로그인창 뜨는 문제 해결방법 제시 [3] 함재식 2003.12.12
리눅스 커널(kernel)에 심각한 보안 결함 발견 [1] 아치 2003.12.04
apache_2.0.47 + php-4.3.3 + mysql-4.0.16 + zb41pl4 의 windows xp 설치 [3] 기산 2003.10.28
NOP_0x90 Document No.2(APM연동 Mysql-DB설정편) NOP_0x90 2003.07.06