2011년 8월 31일 수요일

그누보드 모바일

/m/bbs/경로에 register.php와 register_form.php 까지 갔다놔서 잘되는데 skin은 /skin/member/basic/경로의 파일을 가져다 사용해야 해결된다.

2011년 8월 27일 토요일

이미지 가운데 정렬

이미지 좌우 가운데 정렬

html 에서
<span id="subject"><img src="../m/img/20110827018.gif"></span>으로 감싸고

css 에서
#subject {display: block; text-align:center;} 으로 하니 해결

혹은
<table>의 css속성에서 <table-layout:fixed; margin-left: 20px; margin-right: 20px;> 이런 식으로 해결해도 된다.

2011년 8월 25일 목요일

서버이전 후 자동등록방지가 안나올 떄

서버 이전 후, 그누보드에 스팸방지숫자(자동등록방지)가 안나오는 거다.
GD라이브러리를 설치해 주었더니 잘 나온다.

그누보드 db복구후 로그인 안될 때

http://sir.co.kr/bbs/board.php?bo_table=cm_free&wr_id=461576

http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=199322&sca=&sfl=wr_subject||wr_content&stx=db+%EB%A1%9C%EA%B7%B8%EC%9D%B8&sop=and

http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=21757&sca=&sfl=wr_subject||wr_content&stx=old_password&sop=and

http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_db&wr_id=140130&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%B9%E9%BE%F7+%BA%B9%B1%B8&sop=and&page=7

https://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19303&sca=&sfl=wr_subject||wr_content&stx=%EC%9E%90%EB%8F%99%EB%93%B1%EB%A1%9D&sop=and&page=2

https://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19893&sca=&sfl=wr_subject||wr_content&stx=%EC%9E%90%EB%8F%99%EB%93%B1%EB%A1%9D&sop=and&page=2

http://hosting.digimoon.net/board/?mid=freeboard&sort_index=readed_count&order_type=desc&document_srl=15699

해결
http://opencode.co.kr/bbs/board.php?bo_table=gnu4_tips&wr_id=39
/lib/common.lib.php와 /bbs/login_check.php만 바꿔주었다. 관리자, 회원 모두 로그인이 잘 된다. mysql이 버전업되면서 패스워드 포멧에 변화가 생겼다고 한다.
나는 mysql을 같은 5.1대 버전으로 복구했는데 왜이런 문제가 생겼는지 모르겠다. 5.1에서도 업그레이드 버전이 있는 것인지..

내용
웹호스팅 또는 서버호스팅에 따라서 mysql의 버젼이 꽤 많이 차이가 나는게

4.0.x와 4.1.x 이후 버젼 사이에는 패스워드 포맷이 달라지는 중대한 변화가 있습니다.
 
그 결과 4.0.x의 패스워드는 4.1.x 이후에서는 인식될 수가 없습니다.
 
mysql에서는 편법으로 서버 옵션으로 --old_password 라는 것을 제시해서 4.1.x 이후에도
옛날의 허술한 패스워드를 쓸 수 있게 해주고 sql에서도 old_password라는게 있습니다.
 
그러나 이것은 진정한 문제의 해결이 아니고 문제를 잠시 덮어주는 역활만을 하는 것이죠.
 
 
제가 5.0.41로 버젼업을 하면서 옛날의 4.0.x의 패스워드가 먹히게 하기 위해서 ...
 
 
/lib/common.lib.php 에 다음 함수를 추가 합니다.
 
function sql_old_password($value)
{
    // mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes
    // mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes
    $row = sql_fetch(" select old_password('$value') as pass ");
    return $row[pass];
}
 
 
/bbs/login_check.php의 15라인을 다음과 같이 수정 합니다.
 
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password] and sql_old_password($mb_password) != $mb[mb_password]))
 
 
/bbs/register_form.php의 66라인을 다음과 같이 수정
 
    if (($member[mb_password] == sql_password($_POST[mb_password]) and $member[mb_password] == sql_old_password($_POST[mb_password])) && $_POST[mb_password])

 
그러면 새로운 사용자는 새로운 패스워드로, 옛날 사용자는 옛날 패스워드로 login check를 하게 됩니다.

2011년 8월 21일 일요일

쿠분투에서 atheros 무선랜을 지원한다.

노트북의 전원버튼 옆에 있는 무선랜 버튼을 콕하고 눌러줬더니 무선랜이 스캔 된다.

DB 복구

서버를 재설치 하고 DB를 복구해서 웹페이지 접속을 성공했다.

과정은 다음과 같다.
1. 서버와 a.p.m을 설치 했다.
2. 기존에 사용하던 계정을 생성하고 가상호스트를 설정해 두었다.
3. 웹페이지 자료를 서버의 home/user/www 로 옮겼다.
4. http://kr.dnsever.com 에서 IP주소를 갱신해 두었다.
5. 서버에서 자동으로 다이나믹dns를 업데이트 실행 하도록 했다. (http://kr.dnsever.comr에서 설명 참고)

2011년 8월 20일 토요일