웹마스터 팁

제로보드 사용 당시 회원 중 상당수가 숫자로 시작하는 아이디를 가지고 있는데 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차 경고창이 없어지고 정상적인 로그인이 가능하게 되었습니다. 코드를 보면 수정하기 전에는 아이디 첫글자는 반드시 영문 소문자만 가능하도록 되어 있었습니다. 수정후에는 숫자, 영소문자, 영대문자로 시작하더라도 로그인과정을 통과할 수 있게 되었습니다.

 

제목 글쓴이 날짜
포인트복권 팝업창 말고 현재창에서 바로 사용하기! [1] 바가G 2014.04.28
유챗 팝업창으로 만들기 [1] file oscarmike 2014.04.26
도움안될 것 같은 람보의 주옥같은 팁1 (스케치북 스킨에서 ctrl+enter키로 댓글작성 완료하기) [5] BJ람보 2014.04.26
머니시스템 보유머니 출력하기 [13] oscarmike 2014.04.24
회원가입시 아이피 기록하기 [10] 수직상승 2014.04.24
css를 이용한 페이지 인식 헤이즈디자인 2014.04.23
Windows Server 이벤트 로그 정리하기 StyleRoot 2014.04.20
Windows Server 에서 세션 최적화 StyleRoot 2014.04.20
가비아에서 웹호스팅 관련 팁 [1] JerryKim 2014.04.19
무한 스크롤 스크립트 [4] 웹빌드 2014.04.16
XE 업데이트후 갑자기 CSS/JS등이 403 오류가 날때 YJSoft 2014.04.16
include용 파일에는 닫는 php문이 없다? file YJSoft 2014.04.14
NULL/XMAS 패킷 포트 스캐닝 방지 방안 고구마군 2014.04.12
<div>에 ajax html 넣기 [3] 웹빌드 2014.04.10
xe 쪽지 보내기창에 파일첨부하기 연동하는 팁 [7] 졸라맨 2014.04.09
장비 침입 탐지 및 자동 ip 차단 프로그램 소개 [4] 고구마군 2014.04.09
Windows IIS 에서 F5 연타 방지하기 (mod_evasive , limit_req) [3] file StyleRoot 2014.04.08
jquery 외부로드하기 [22] DynamicLaser 2014.04.07
부트스트랩 css 팁 [3] 돼지코구뇽 2014.04.05
관리자를 제외하고는 타회원의 회원정보 보기를 막는 방법 [1] sejin7940 2014.04.04