크리에이티브 커먼즈 라이선스
Creative Commons License

개인 웹서버를 이미 운영중이거나 운영할 계획이 있는분들 중에 리눅스로 운영하시는 분도 있고

윈도우로 운영하는 분들도 있습니다. 리눅스로 APM서버 구축하기는 이미 알고있는 사람 입장에서

보면 참 쉽습니다. 리눅스를 다룰줄 아시는 분들이라면 물론 더욱 쉽겠죠. 그리고 리눅스로 운영하는

것이 보안상에도 좋고 관리성에 있어서도 윈도우보다 낫습니다. 하지만 이는 어디까지나 아는사람

얘기일뿐이고 적게는 수년 많게는 십수년간 윈도우에만 적응해온 사용자들에게 리눅스로 웹서버

구축도 하고 여러가지 관련 웹프로그램들을 운용하기란 쉬운일은 아닙니다. 그런 사용자들의 고충을

헤아려서인지 인터넷상엔 많은 윈도우용 APM패키지가 돌아다닙니다. 그중 업데이트가 잘되고

사용하기 편한 패키지로는 RWAPM과 Autoset인것 같습니다. APM_Setup은 아파치 1.x버전대에는

상당히 널리쓰였지만 최근에는 업데이트가 타패키지에 비해 적어서 많이 쓰진 않는듯 싶습니다.

그래도 http://apmsetup.com 에는 서버관리시 유용한 정보가 상당하니 관심있으신 분들은

들러보셨으면 하네요.. 어쨋든 저의경우 테스트 용으로 Autoset을 사용하고 있는데 RWAPM과의

차이는 매니저 프로그램을 통해 서버관리가 이뤄질수 있다는 편리함이 있다는 것입니다.

두 패키지 모두 쓰기편하지만 각종 패키지들이 업그레이드됐을경우 패키지 업데이트 전까지

하염없이 기다리는 분들이 계실텐데 그분들을 위해 약간의 팁을 써봅니다.

Autoset을 중점으로 업데이트 방법을 쓰겠습니다.

(Autoset 초기설치에 대한 자세한 내용은 http://cafe.naver.com/autoset 을 참고바랍니다.)

오토셋이 모두 설치된후에 디렉토리 구조를 보시면 Server 디렉토리내의 구조가 다음과 같습니다.

사용자 삽입 이미지


이곳이 Apache, MySQL,PHP가 모두 들어가있는곳으로 이 세가지를 업데이트 해보겠습니다.

기타 ZendOptimizer나 phpmyadmin같은 프로그램들도 비슷하지만 이 세가지만 정확히 쓰겠습니다.

http://www.moyiza.com 으로 접속해서 모이자APM 최신 버전을 다운로드 합니다. RWAPM에서

파일을 가져올수도 있지만 모이자 APM의 패키지 구조가 오토셋과 가장비슷합니다.

제 기억상 최근버전인 오토셋 4.3.1에는 SVN을 포함 아파치 2.2.x대의 서버가 포함된것으로 아는데

저같은 경우 매니저 프로그램만을 원해서 4.2.9버전을 사용하고 있습니다. 이버전은 2.0.x대의 아파치

서버가 들어가 있습니다. 만약 1.x대의 아파치 서버를 쓰시는 분들이 계신다면 설정파일등 상당히

많은 부분이 아파치 2.0이나 2.2대의 버전과 다르므로 꼼꼼히 체크해보고 업데이트 하셔야합니다.

개인적으로 오토셋 4.2.9 버전을 바탕으로 업데이트 하는것을 권장합니다.

어쨋든 받으셨다면 압축을 풀어줍니다.
사용자 삽입 이미지

모이자 APM의 Program 디렉토리를 보시면 이와같이 오토셋과 비슷한 구조를 가지고 있습니다.

이제 모이자 APM의 Apache2 디렉토리로 들어갑니다.

사용자 삽입 이미지
모이자APM - Apache2 서버 디렉토리 내용

사용자 삽입 이미지

오토셋APM - Apache2 서버 디렉토리 내용

우리는 오토셋을 기반으로 서버 프로그램들을 업그레이드 하는것이므로 오토셋의 conf폴더내의

내용들은 따로 백업을 해둡니다. conf파일에는 Apache서버의 각종 설정 내용들이 들어있는데

패키지를 만든 제작자마다 conf파일내용이 다를수 있습니다. 이를 제외하고 모이자APM의 Apache2

폴더를 오토셋의 Apache2 폴더로 모두 덮어씌웁니다. 꼼꼼하신분들은 bin,modules폴더등을 세심히

살펴보시고 하나하나씩 업데이트 하셔도 됩니다.

사용자 삽입 이미지

bin폴더를 보시면 apache.exe 파일이 있는데 원래 파일명은 httpd.exe입니다. 이를 apache.exe로

바꿔줍니다. 오토셋프로그램에서 서버시작은 apache.exe여야 가능하기 때문입니다. 운영에는

아무런 지장이 없습니다. 이로써 아파치 서버의 업데이트는 끝입니다. 다음은 PHP입니다.

사용자 삽입 이미지

오토셋의 PHP5 폴더구조

사용자 삽입 이미지

모이자 APM의 PHP5 폴더구조

모이자 APM의 PHP5폴더를 Autoset의 PHP5 폴더로 덮어씌우는데 PHP.INI파일은 반드시 백업후

덮어씌우시기 바랍니다. 아파치에서와 마찬가지로 환경설정 파일이 다를수있습니다. 또한 이전에

구버전APM(예: 아파치 1.3.x, PHP 4.x 패키지)의 경우 PHP4와 PHP5의 구조가 다르므로 기존의

php.ini파일내용을 잘확인하시고 PHP5로 새로 설치해주셔야 합니다. 모든파일 덮어씌우기를 통해

PHP5의 업데이트가 끝납니다. 다음은 MySQL입니다.

사용자 삽입 이미지

오토셋의 MySQL폴더구조

사용자 삽입 이미지
모이자 APM의 MySQL폴더구조

둘다 별차이 없는대신 여러개의 ini파일이 있는데 my.ini가 실제로 쓰이는 설정파일이고 대규모의

DB서버를 쓸것이냐 작은구조의 DB를 사용할것이냐에 따라 다른 파일들의 이름을 my.ini로 바꿔서

사용하실수 있습니다. 여기서도 위와 마찬가지로 기존의 my.ini파일을 백업시켜두고 기존에 MySQL

를 통해 테이블 작성등이 이뤄진 데이터가 있다면 MySQL폴더를 모두 백업시키고 작업진행하시길

바랍니다. 그런것이 없다면 여기서도 마찬가지로 my.ini를 제외한 모든파일을 덮어씌웁니다.

사용자 삽입 이미지

bin 폴더를 보시면 mysqld-nt.exe 파일이 있습니다. 이는 오토셋에서는 기본적으로 mysqld.exe로

 윈도우 서비스에 등록해서 사용할수 있게되있는데 차후 업데이트 용이성을 위해 mysqld-nt.exe

로 파일명을 바꿔줍니다. 이렇게 한뒤 오토셋이 설치된 메인 디렉토리로 이동합니다.

사용자 삽입 이미지

네개의 배치파일이 있는데 mysql_install,stop 파일을 수정해 줍니다. mysql_install과 uninstall은

윈도우에 서비스 등록 해제를 위해 사용됩니다. 작업전 mysql_uninstall.bat을 통해 기존에 등록된

MySQL서비스를 제거합니다. 이경우 위에서 고쳤던 mysqld-nt.exe 이름을 mysqld.exe로 원래대로

바꿔준뒤 서비스제거후 다시 mysqld-nt.exe로 바꿔줍니다. 그 후 메모장 등으로 파일을 열어봅니다.

사용자 삽입 이미지

위와같이 나오는데 mysqld라고 되있는 부분을 위와같이 mysqld-nt로 바꿔줍니다. 뒷부분

큰따옴표 안의 내용은 윈도우의 관리도구☞서비스에서 표시되는 이름부분이므로 아무렇게나

수정해주셔도 괜찮습니다만 이경우 mysql_start와 stop 배치파일 내용또한 바꿔줘야합니다.

사용자 삽입 이미지

uninstall 배치파일의 내용입니다. 위와 마찬가지로 mysqld 부분을 mysqld-nt로 바꿔줍니다.

이제 mysqld-install.bat을 실행해줍니다. 다음으로 윈도우의 제어판→관리도구→서비스로

들어가서 Autoset_MySQL을 더블클릭합니다.
사용자 삽입 이미지

서비스 재등록후 시작유형이 자동으로 되어있는데 이경우 시스템을 켤때마다 mysql 서비스가

자동으로 시작됩니다. 여기서는 오토셋이 실행될경우 mysql서비스가 실행되게 할것이므로 서비스를

중지시킨뒤 시작유형을 수동으로 바꿔주고 확인을 눌러줍니다. 이로써 Apache,PHP,MySQL의

업데이트가 끝납니다. 이제 오토셋을 실행시켜서 이상유무를 확인해봅니다. 모든 작업전에는

항시 모든 폴더들을 백업하고 작업하시길 바랍니다.
만약에 기존에 설정된것이 많이 있다면

반드시 확인해보고 업데이트를 진행하시기 바랍니다. 이 업데이트의 단점은 어떤 한 제작자가

만든 순수(?) 패키지가 아니므로 오작동을 할수있다는 것인데 제가 이제까지 써보면서 어떤 오류도

생긴적이 없습니다. 하지만 보장은 할수없다는것을 알아두시고 마지막으로 가장 중요한것은

이렇게 만들어진 패키지를 개인용도로만 사용하시기 바랍니다. 원래의 패키지가 설령 프리 라이센스

라고 하더라도 수정/재배포는 개발자의 의욕을 꺾는것은 물론이고 해서는 안될일입니다.

이 팁이 잘 모르시는 분들께 많은 도움이 됐으면 좋겠습니다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
윈도우 폴더(기본 c:\windows)를 보면 my.ini라는 mysql 설정 파일이 있다. max connection은

기본으로 250이 주어지지만 접속자가 많아 이를 늘리고 싶다면 mysqld 항목에 아래와 같이

추가하면 된다.

[mysqld]
port  =
socket  =
key_buffer =
max_connections=1000

1000이나 되는걸.. 일반 데스크탑 서버에서 감당할수 있을지는 모르겠지만 이런식으로

원하는 만큼 늘려주면 된다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

(이 강좌는 운영자 미니홈피 http://cyworld.com/hy313 에서도 보실 수 있습니다.)

앞에서는 Zboard 설치를 위한 mysql의 DB만들기에 대해서 알아보았다. 이번에는 zboard설치에

대해서 알아볼것이다.현재 4.1pl8버전이 최신버전이므로.. 받아서 설치를 해보겠다.

기본폴더는 C:\APM_Setup\htdocs\ 에 그대로 압축을 풀어주면 된다. bbs폴더를 htdocs에

해제해주면 된다. 해제한뒤..(덧붙혀 제로보드5 베타의 경우는 UTF-8을 기본규격으로 만들어져서

아마도 지금 최신버전의 APM_Setup에서는 글꼴이 모두 깨져보일수가 있다. 확인한 바가 없어서

잘은 모르겠다.)

사용자 삽입 이미지

현재 필자는 테스트를 위해 가상호스트를 이용해서 기본폴더가아닌 다른곳에 설치를 하고있다.

기본적으로는
http://127.0.0.1/bbs/install.php 로 접속하면 위와같이 뜬다.

약관에 동의 하고 설치를 하겠다고 하면 아래와 같은 화면이 뜬다

사용자 삽입 이미지

아까 만들었던 mysql의 db가 이제 제대로 쓰일것이다. hostname에는 우리가 DB를 만들때

localhost를 사용했기 때문에 그대로 두면 된다. SQL user ID엔 DB를 만들때 썼던 board2를

쓰면된다. password또한 DB를 만들때 썼던 암호를 써주면 되고 맨밑의 이름또한 board2로 쓰면

된다. 이상없이 마치면..
 

사용자 삽입 이미지

관리자 정보를 입력받게 된다. 자신이 실제 제로보드를 관리할때 쓸 ID와 암호 그리고 사용자명등을

맘에 드는대로 사용하면 된다. 이는 mysql DB와 상관없고 제로보드관리에만 상응하는 부분이다.

따라서 가능하면 mysql DB암호와 제로보드 관리자 암호는 관계없이 설정하는것을 권장한다.

사용자 삽입 이미지


모두끝나면 이렇게 관리자 ID와 암호를 입력받는 항목이 뜨고 앞서 설정했던 제로보드 관리자 ID와

암호를 입력하면 마침내 제로보드의 메인화면을 볼수있게 된다.

(3장에서 계속됩니다.)
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

(이강좌는 운영자 싸이월드 미니홈피 http://cyworld.com/hy313 에서도 보실수있습니다.)

여기까지 이상없이 통과하신 분들은 이제 APMSETUP을 이용한 게시판의 활용에 대해서 알아볼것

이다. 근사모에 동영상강의로 매우 쉽게 설명하고 있으나 동영상이 지루하니까 여기서 그냥 설명하

도록 하겠다. 일단  설치하기에 앞서 http://nzeo.com 을 접속해서 제로보드 4.1pl8(06.4.5까지 최신

버전)을 다운로드 한다. tar.gz로 끝나는 리눅스용이 아니라 윈도우용인 zip압축 파일을 받도록 한다.

일단 제로보드를 이용하기 위해서 http://127.0.0.1/myadmin 으로 접속하여 mysql의 DB를

만들어줘야한다

사용자 삽입 이미지

여기서 root로 물론 초기암호는 apmsetup이고 앞서 강좌에 따라 암호를 바꿨다면 그암호를
 
사용하여 접속하면 된다.

사용자 삽입 이미지

접속하면 이렇게 초기화면이 뜨고 여기서 새데이터베이스 만들기에 자신이 사용할 보드의

DB명 쉽게 말해 그냥 맘에 드는 이름을 입력해준다. 필자는 여기서 board2로 입력을 했다.

후에 위의 데이터베이스 항목위의 집버튼을 눌러 초기화면으로 돌아온다

(덧붙혀서 만약 APMsetup내부에서 Mysql만 버전업그레이드를 했을경우 제로보드4를 설치할때

 만들 테이블의 Collation을 UTF-8에서 EUCKR로 바꿔줘야한다. 이점에 대해선 나중에 올리도록
 
 하겠다.)

사용자 삽입 이미지

이 초기화면에서 새사용자 추가를 누른다.
사용자 삽입 이미지

머리아프게 여러가지 설정 란이 있다. 사용자란을 board2
로 하고 암호를 써주었다. 밑에 generate

password는 말그대로 랜덤하게 암호를 만들어주는 별로 쓸데 없는 기능이다. 어쨋든 이렇게 해준뒤
맨 밑의 실행 버튼을 누르면..
사용자 삽입 이미지

이와 같은 화면이 뜬다. 윗화면이며..밑의 화면은..
사용자 삽입 이미지

화면에서 짤렸는데 암호변경 위의 항목을 보면 데이터베이스에 대한 권한이란 항목이 있다. 여기서

다음데이터베이스에 권한추가하기에서 board2 를 선택해주면 다음화면으로 넘어간다.
사용자 삽입 이미지
여기서 데이터베이스에 대한 권한에 모두 체크해주고 바로밑의 실행을 눌러주면 권한설정 업데이트

가 완료되었다고 뜨게된다. 자 여기서 다시 맨위의 사용권한탭을 눌러주면 맨밑에

주의:php어쩌고 나오는곳에 reload the privileges 라는 항목이 있는데 이를 실행시켜준다.

실행시킨뒤엔 사용권한이 다시 로드되었다고 뜨게 된다. 이렇게 해서 제로보드 설치를 위한 My sql 

DB만들기가 끝난 것이다. 확인을 위해서 왼쪽 집메뉴 옆에 로그아웃을 하여 board2를 id로 로그인을
 
해본다.

(2장에서 계속됩니다.)

신고
크리에이티브 커먼즈 라이선스
Creative Commons License

이번에는 윈도우 서버제품을 사용한 IIS(Internet Information Service)를 사용한 웹서버 구축에

대하여 알아보겠다. 굳이 서버 제품군을 구하기 힘들다면 윈도우 2000 이나 윈도우 XP를 통해서도

사용해 볼수있다. 강좌의 중점은 활용보다는 웹서버 자체를 구축하는 방법에 대해서 훓어보는 형식

이 될듯 하다. 개인적으로 IIS가 왠지 Apache보다 못하다는 생각이 들어서 사용하지 않는데다가

현재 Apache서버를 쓰고있는 상황에서 IIS를 사용하여 PHP,Mysql연동을 시키는 것이 귀찮기도

하고 많은 부분을 까먹어서 검색해보고 하지 않으면 할수도 없기 때문에 여기서는 IIS로 웹서버

서비스 구동부분까지만 설명 하도록 하겠다.

사용자 삽입 이미지

윈도우 2003 Server Enterprise Edition이 설치중인 화면. 별달리 설정할 곳은 없다.. 필자의 경우

영문판밖에 가지고 있질 않아서 영문판으로 설치 중이다. IIS를 다 해보고 나선 2003은 안녕이

될것이다..

사용자 삽입 이미지

IIS를 설치중인 화면이다. 제어판->프로그램 추가/제거-> 윈도우 구성요소 추가설치/삭제에서

인터넷 정보 서비스(IIS)를 설치 혹은 삭제 할수가 있다. 현재는 설치 중이다.

사용자 삽입 이미지

설치가 끝나면 제어판에서 '관리도구' 내의 인터넷 정보 서비스(IIS)를 선택 하기로 한다.

여기서 화면에 나온대로 기본 웹사이트를 클릭 한뒤 속성을 눌러준다.

사용자 삽입 이미지

TCP포트는 만약 VMware환경(호스트 컴퓨터에 웹서버가 설치안된)에서 윈도우서버 2003이나 다른

OS를 설치해서 IIS를 쓰고자 한다면 80번 포트(웹서버 기본)를 그대로 놔두어도 되지만 웹서버를

따로 쓰고있다면 메인으로 쓰고자 하는 웹서버포트를 80으로 하고 IIS를 9999등의 포트번호로 지정해

주는 것이 좋다. 이때 VMware의 Network settings에서 포트포워딩을 해줘야 하는데 이 블로그의

리눅스에서 아파치 서버 설치하기 강좌 에서 찾아보면 포트포워딩 방법을 알수있다.

필자는 80번포트를 이미 사용중이므로 9995번포트를 IIS에 부여하기로 했다. 설명 부분엔 웹사이트

를 읽어들였을때에 뜨는 타이틀, IP주소는 설정하지 않으면 기본적으로 윈도우에서 부여된 IP주소를

할당하여준다.

사용자 삽입 이미지

다음은 홈디렉토리 설정이다. 아파치서버의 기본 홈페이지를 읽어들일 디렉토리가 htdocs나

public_html인것 처럼 IIS에서는 c:\inetpub\wwwroot 를 기본으로 한다 이곳에 index.html

파일을 넣고 http://localhost 하면 apache서버를 실행시켰던 그것처럼 같은 결과를 볼수잇다.

디렉터리 검색은 IIS서비스 실행시 디렉터리 경로들을 보여준다. index.html을 화면에 읽어들이는

것이 아니라 탐색기에서 보듯이 파일로만 보여주게 된다. 여기서는 기본값인 미설정으로 설정한다.

나머지 옵션들에 대해서는 기본값대로 사용해도 무방하다.

사용자 삽입 이미지

이번엔 문서 항목이다. 윗쪽은 기본으로 읽어들일 문서에 대해서 나와있는데 마음에 드는대로

수정하면 되겠다. 필자는 좀 있다 index.htm을 불러들일것이라 그대로 놔두기로 하겠다.

아래 메뉴는 문서 바닥글 사용 메뉴인데 이를 html파일로 지정해놓으면 웹페이지를 읽을때

IIS가 이 내용을 페이지 바닥 부분에 보여주게 된다. 별 필요없는 기능이라 생각되어 생략하기로

했다.

모든 내용을 적용 혹은 확인버튼을 누른뒤..아무 내용이나 htm문서로 코딩하여..

사용자 삽입 이미지

아래와 같이 c:\inetpub\wwwroot 디렉토리에 저장한뒤.. 웹브라우저에서 IIS에서 할당했던

IP를 입력하면 내부에서 이렇게 화면이 뜨고.. 외부에서 localhost:9995 로 내부접속은 이상없이

되는것이 확인되었다.
사용자 삽입 이미지

그렇다면 이번엔 외부접속 확인을 해보겠다..
사용자 삽입 이미지

이렇게.. 외부접속까지 되는것을 확인했다.

-----------------------------------------------------------------------------------------

여기까지 IIS를 사용한 윈도우 에서의 웹서버 구동법에 대해 알아보았다. 구동만 한다고 다되는것도

아니고. 요새 홈페이지들은 예전과 달리 php,mysql등이 연동되어 따로 Apache 서버나 IIS를

PHP,Mysql과 연동시키는 방법보다는 편하게 웹서버를 구동해볼수 있는 Autoset이나 APMsetup

같은 웹서버 매니지먼트 프로그램을 권장한다. 여기서 IIS에 대해서 알아 본이유는 윈도우에서

꼭 Apache뿐이 아니라 IIS로도 서버환경을 구축할수 있다는것을 보여주기 위한 예를 들어본것

뿐이다. IIS는 Apache의 가상디렉토리(Alias)에 해당하는 부분도 IIS에서 해줄수 있다. 어쨋거나

여기까지 간단히 구축방법을 알아보았다.
신고


티스토리 툴바