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

요즘엔 보통 Tomcat 5~6버전 혹은 Tomcat 7 버전을 WAS로 사용하는 경우가 있을 겁니다. 제가 일하는 곳의

환경은 꽤 구형 시스템을 사용하고 있고 프로그램에서 DB 커넥션 시 JDBC로 바로 연결하고 있어 부하가 상당히 걸리는

편이라 개선을 해보고자 DBCP를 사용하여 커넥션을 얻어오도록 테스트를 해봤습니다. 요즘엔 각종 프레임워크에서

손쉽게 설정 가능 하지만 이곳 상황이 그렇지 못하기 때문에 좀 삽질을 했습니다.

먼저 DBCP를 사용하기 위해서는 자카르타 DBCP API인 Commons-dbcp-1.2.1.jar, Commons-collections-3.1.jar,

Commons-pool-1.2,jar 가 반드시 필요합니다.(꼭 버전이 맞아야 하는것은 아닙니다.)

그리고 중요한 것은 이 세개의 라이브러리가 톰캣 설치 디렉토리의 commons/lib 디렉토리에 위치해야 하며 어플리케이션이

위치하는 컨텍스트에 이 라이브러리들이 중복해서 등록됐을경우 오류를 발생 시킵니다.

1. Tomcat - Server.xml 수정

  - 톰캣이 설치된 디렉토리의 conf/server.xml을 수정합니다. 여기서 Resource의 name속성에 지정된 명칭은

  나중에 JNDI를 통해 가져올 이름으로 이후에 수정할 컨텍스트 내의 web.xml의 명칭과 동일 해야 합니다.

  혹은 전역적으로 설정하기 위해 <GlobalNamingResources> 내부에서 <Context>를 제외하고 아래 내용을 사용해도 됩니다.

<Context path="" docBase="ROOT" debug="0">
   <Resource name="jdbc/erpdb" auth="Container" type="javax.sql.DataSource"/>
   <ResourceParams name="jdbc/erpdb">
     <parameter>
          <name>username</name>
          <value>test</value>
     </parameter>
     <parameter>
          <name>password</name>
          <value>test</value>
     </parameter>
     <parameter>
          <name>driverClassName</name>
          <value>com.sybase.jdbc2.jdbc.SybDriver</value>
     </parameter>
     <parameter>
          <name>url</name>
          <value>jdbc:sybase:Tds:111.222.222.111:4444/erpdb?charset=eucksc</value>
     </parameter>
     <parameter>
          <name>removeAbandoned</name>
          <value>true</value>
     </parameter>
     <parameter>
          <name>removeAbandonedTimeout</name>
          <value>60</value>
     </parameter>
  </ResourceParams> 
 </Context>

설정후 이 부분을 보면 jdbc:sybase:Tds:111.222.222.111:4444/erpdb?charset=eucksc 뒤에 파라미터로 캐릭터셋을

지정해 줬습니다. 여기서는 DB의 캐릭터셋을 지정해 주면 됩니다. Sybase에서 혹 안되면 eucksc 대신 euc-kr 로 해보면 될 것

같습니다. 여기서 좀 삽질을 했는데 DB의 캐릭터셋이 euc-kr이라 위에서 설정시 <parameter>에 넣고 설정해 봤는데 아래와

같으 오류가 발생했습니다. JNDI를 통해서 커넥션을 가져오면서 나오는 에러였는데 위와 같이 설정해 줌으로 해결됐습니다.

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (JZ004: DriverManager.getConnection(..., Properties)에 사용자 이름 속성이 없습니다.)

2. web.xml 수정(컨텍스트/WEB-INF/web.xml)

프로그램에서 JNDI를 통해 커넥션을 가져오기 위해 위에서 서버쪽의 server.xml에서 설정한 Resource name 과 동일하게

설정 해줍니다. 동일하지 않을경우 커넥션을 받을 수 없으므로 오류가 발생하게 됩니다.

 <resource-ref>
      <description>ERP DB</description>
      <res-ref-name>jdbc/erpdb</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
 </resource-ref>

2. 프로그램에서의 테스트

  Connection conn = null;
  InitialContext initContext = null;
  Context ctx = null;
  DataSource dataSource = null;

  try{
   initContext = new InitialContext();
   //ctx = (Context) initContext.lookup("java:comp/env");
   //dataSource = (DataSource) ctx.lookup("jdbc/erpdb");
   dataSource = (DataSource) initContext.lookup("java:comp/env/jdbc/erpdb");
  }catch(Exception e){
   System.out.println(e);
  }

  conn = dataSource.getConnection();

여기서 한가지 주의할 점은 경우에 따라 JDBC API도 톰캣 설치디렉토리의 common/lib 에만 위치 시키고 컨텍스트의

lib 디렉토리에서 중복될 경우 아래와 같은 오류가 발생할 수 있습니다.

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'com.sybase.jdbc2.jdbc.SybDriver'

여기까지 설정후에 확인해보시면 아마 제대로 되지 않을까 싶습니다. 그나저나 기존 소스에 JDBC 커넥션 맺는 부분을

어떻게 효과적으로 바꿀지가 더 고민이 되는군요. 파일이 수만개가 넘고 거의 모든곳에서 커넥션을 맺는 행위를 서블릿에서

init() 호출시 하도록 되어 있습니다. 노가다의 끝판왕을 보게 될 듯 싶네요 ㅎㅎ. 어쨋든 톰캣 구 버전을 사용할때 위 내용을

참고하면 될 듯 싶습니다.

 

 

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

블로그에 거의 반년만에 글을 남겨봅니다. 요새 스마트폰 관련해서 하이브리드 어플을 개발중이라

많이 바쁘네요. 많은 개발자분들이 그러하듯 야근 야근 야근이 계속 되고있습니다.ㅜ_ㅜ 그래도

이번주에는 조금 풀려서 블로그도 한번 들러서 글을 써보게 되네요 ㅎㅎ. 사설은 여기까지 하고..

최근에 개발을 하면서 서버쪽으로 해봐야 될게 있어서 집에서 뒹구는 펜티엄3, 펜티엄4 PC에

각각 윈도우, 리눅스를 설치해서 APM서버설치, FTP서버를 설치했습니다. 각각의 사양은

아래와 같습니다.

Pentium III PC

CPU - Intel Pentium III 750Mhz(소비전력량이 성능에 비해 적은 편입니다. 19.5W)
RAM - PC100 256MB(원래는 96MB였는데 2천원 주고 업그레이드 했네요..;;)
HDD - 삼성전투기 20GB(과거 삼성 HDD소음은 알아주죠ㅎㅎ)

Pentium 4 PC

CPU - Intel Pentium 4 1.4GHz
RAM - PC133 512MB
HDD - 시게이트 20GB

보시다 시피 요즘 PC들에 비하면 초라하기 그지없는 사양입니다만 개인용도 서버로 쓰기엔

훌륭한 사양입니다. 이 두 PC에 서버프로그램들을 설치하고 속도테스트를 해봐야 되서

이것저것 하던중 전에는 소음,전기세 압박문제로 24시간 서버를 돌렸다가 닫았었는데

문득 펜티엄3 PC정도면 소비전력량이 많이 줄겠다는 생각이 들더군요. 그래서 현재 이 PC는

베란다에 내놓고 서버가동중입니다. 이렇게 구축하고 나서 이래저래 검색하다보니 신기한 기기가

눈에 띄더군요.. 바로 이겁니다.

사용자 삽입 이미지

Pogoplug - Home Server
(이미지 출처 : http://internet.watch.impress.co.jp)


처음 봤을때는 뭐하는 물건인가 싶었습니다. 쉽게 개인용도용 NAS라고 보시면 되겠습니다.

어디서나 인터넷만 된다면 저 Pogoplug를 설치해놓고 접속해서 파일을 공유할수 있습니다.

이런기능이야 별거 아니긴 하겠지만 위에서 제가 주절주절 떠들었던 이유는 바로 홈서버로

PC를 쓸경우 대부분 사용용도로 파일서버, 웹서버 위주로 사용하게 되는데 제 목적에 가장

부합하는 것이 바로 이런 기기였습니다. 회사에서 접속해서 집에있는 파일을 가져와야 될때도

있고 외부나갔을때도 유용하게 쓰일수 있겠죠. 이놈에 대해 좀더 자세히 봐보겠습니다.

사용자 삽입 이미지

크기가 아주 작습니다. 흔히 볼수 있는 가정용 공유기 크기보다 약간 작다고 보시면 되겠습니다.
사용자 삽입 이미지

그렇다면 사양은 어떨까요?

Power requirements: 100-240V, 50/60HZ

  • Drive connection: USB 2.0
  • Drive Formats: NTFS, FAT32, Mac OS Extended Journaled and non-Journaled (HFS+),
    EXT-2/EXT-3
  • Network connection: Gigabit Ethernet
  • Operating Systems: MS Windows XP, Vista, Windows 7, Mac OSX 10.5 and above
    (Intel and PowerPC) 32bit kernel only, Linux
  • Web browsers: Safari, FireFox 3, IE 7, IE 8, Chrome

  • 위는 제작사에서 밝히는 상세스펙입니다. 보시면 알겠지만 많은 디스크 포맷과 운영체제를 지원

    하고 기가비트 이더넷 사용이 마음에 드는군요.

    사용자 삽입 이미지
    실사용 예


    위와같이 자료는 USB외장하드나 USB스틱등에 넣어두고 랜선은 공유기나 직접 회선에 꼽아

    사용할수 있게 되있습니다. 현재 시중에 일반적으로 판매되는 NAS들이 그러하듯 이 녀석도

    내장 브라우저를 사용합니다. 가장 유심히 봤던 부분은 전력사용량인데 대기시 5W 이하라고

    하네요. 한가지 제일 중요한게 빠졌는데요. 가격은 꽤 비싸네요 $129에 팔리고 있습니다.

    하지만 아직 국내에선 구입할수 없네요. 뭐 이베이나 아마존등을 통해서 살수야 있겠지만

    너무 비쌀것 같습니다. 국내에 출시 된다면 가정용 서버에 관심있으신 분들에게 많이 팔릴것

    같네요. 저 또한 구입해보고 싶네요. 물론 저 정도 사양의 미니 NAS로 고성능을 바라면

    안되겠죠. 이 제품은 작은 사무실이나 소수의 사람들과 파일공유를 할때 쓰면 좋을듯 싶습니다.

    아직 국내판매되고 있진 않지만 이제는 들고다닐수 있는 NAS가 있다는 것만으로도 많은

    관심을 갖게 하네요. 어쨋거나.. 현재 저는 그냥 펜티엄3에 FTP,WEB서버 구축해서 돌리고

    있습니다. 자료도 별로 없지만 써보실 분은 써보세요.

    http://xens.iptime.org

    웹서버에서 FTP로 자동 포워딩 시켜줍니다. FTP로 바로 접속할분은 ftp://xens.iptime.org 로
    가시거나 FTP클라이언트 (알FTP등..) 를 사용하시면 되겠습니다.

    p.s : 원래는 dnip.net 의 서비스를 애용했었는데 작년 즈음해서 DNIP가 문을 닫았더군요.
    아쉽습니다..


    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    윈도우로 웹서버를 운영하면서 여러가지 앞을 내다봤을때 한계가 있을듯 싶어서 어짜피 공부하는 셈

    치고 사양이 좀 낮은 세컨컴에 리눅스를 설치하기로 결정하고 페도라 리눅스로 운영체제를 설치하려

    해서 페도라 7 버전을 찾아서 DVD로 구워놨다.

    사용자 삽입 이미지

    (위는 가족들이 쓰는 컴퓨터 아래는 앞으로 리눅스 웹서버를 돌리게 될 나의 세컨PC)

    문제는 여기서 멍청한 실수를 저질렀다. 가족들이 쓰는 컴퓨터는 LG CD-ROM이 달려있는데 위에서

    보듯 전면부가 검은색이다. 내가 쓰는 DVD-RW도 전면부가 검은색인데 아파서 정신없다 보니 단순

    하게 그냥 DVD를 구워서 시디롬에 넣고 CD부팅을 시도했다. 될턱이 없는데 그때 당시엔 혼자 신경

    질을 냈다. "아 X 왜안돼." 5분정도나 생각하고 나서야 스스로에게 욕을 했다. "아 X신..ㅋㅋㅋ."

    페도라 코어 4버전은 ISO이미지로 CD 네장짜리가 있는데 이날은 몸이 말이 아니라서 결국 공시디

    를 사러가진 못했다.

    사용자 삽입 이미지

    (문제의 CDROM 드라이브.. 세컨컴내부를 살짝 젖은 걸레로 깨끗이 청소해 줬다. 앞으로 웹서버로

    활동하실 귀한몸이니까.. 사양은 매우 안좋다. 펜4 1.8Ghz, 램 256Mb 그래도 이정도면 내 블로그

    의 방문객을 수용하는데는 큰 무리는 없을듯 싶다. 딱 필요한 것들만 설치할 예정이다. 책꽂이의

    정석의 공백이 참 크다. 정석이 없으면 책들이 쓰러진다.ㅋ)

    오늘도 많이 아팠지만 나는 하고싶은건 빨리 해야되는 더러운 성격을 갖고 있어서 기어코 잠깐 나가

    서 한장에 200원짜리 싼 공시디를 기록실패를 대비해서 10장을 사고 나간김에 철물점에 들러서

    먼지청소용 압축공기캔 1개, 케이블타이 제일 작은것 큰것 두묶음을 샀다. 사와서 굽는데 역시 싼

    제품이라서였는지 16배속으로 굽다가 기록실패를 두장이나 해먹었다. 내가 쓰는 CD-RW는 꽤

    예전 제품이다. GCE 8160B라고 쓰기 16X 다시쓰기 10X 읽기 52X의 스펙인데 사놓고 정말 가뭄에

    콩나듯 써서 기록도 잘되고 탈없는 제품이다. 02년경엔가 구입한걸로 기억하는데 이당시에 많이

    팔린 제품이다. 어쨋건 시디 두장을 말아먹고 기념촬영을 했다.

    사용자 삽입 이미지

    (3장째에서 한장 말아먹고 기념촬영한뒤 마지막 4장을 굽다가 또 말아먹었다. 대단해요~)

    이제는 전부 네장 다구워서 설치를 해보러 거실로 나가려고 한다. 일단 리눅스 설치하고 인터넷이 잘

    안되지만 공유 해보고 APM설치해놓는게 오늘의 목표이다. 여기까지 하면 4~5시간 정도 걸릴듯

    싶다. 세컨컴 파워서플라이가 묻지마 제품인데 벌써 8년을 넘게 써오고 있다. 이거 빈약해서

    하드 두개 달아놨다고 죽어버릴까봐 살짝 걱정된다. 어쨋건 이제 삽질하러 가야겠다.
    신고

    'LOG' 카테고리의 다른 글

    블로그 및 서버설정 복구 70% 완료  (6) 2007.09.03
    회선복구와 함께 닥쳐온 재난!  (6) 2007.08.26
    오늘 내내 해야할일들  (4) 2007.07.07
    구글 애드센스 PIN번호 드디어 도착!  (4) 2007.07.05
    I need a tranqualizer  (10) 2007.07.04
    MAD Palace 복귀했습니다.~  (10) 2007.07.02
    크리에이티브 커먼즈 라이선스
    Creative Commons License

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

    앞서 포트포워딩에 대해 알아보았고 이젠 APMsetup설정에 대해알아보겠다.

    사용자 삽입 이미지

    APM setup을 실행했을때의 화면이다. 한가지 덧붙히자면 win98
    기반으로 이프로그램을 사용시

    근사모에서 확인하신분들은
    아시겠지만 업데이트를 하면 안된다. 필자의 경우 지금 My sql이 정지된

    상태인데 이는 APM을 일부러 에러내서 나온화면이다.
    이렇게 APM에 에러가 나서 프로그램이 종료

    된경우 윈도우의
    작업관리자에서 Apache.exe 와 mysql-nt.exe의 프로세스 종료를 해준뒤 다시 구

    동해야 정상 작동한다. 많은 분들이 이점을 모르고
    바로 다시 구동시켜서 접속을 못하는 사례를 봤다

    사용자 삽입 이미지

    리눅스던 윈도우를 기반으로 하던 간에 가장 중요한 것은 보안이다. 보안의 기초로 패스워드 설정이

    다. 패스워드는 자신이 쉽게 외울수있게 하기보다는 길고 어려운 숫자,문자,특수기호가 조합된 것으

    로 쓰는것이 좋겠다. 물론 서버를 운영함에 있어서 많은 보안대비가 필요하지만 필자도 아직 모르는

    것이 많고 이강좌의 주는 보안이 아니므로 넘어가도록 하겠다. 어쨋든 이그림에서 자신의 홈페이지

    의 메인주소를 설정해줄수 있다. 이전에 DNIP나 APMsetup의 기본 주소포워딩 서비스를 사용해야된

    다. 사용하지 않아도 물론 IP주소입력을 통해 홈페이지 접속이 가능하지만 매우 불편하다. 거의 모든

    ISP들은 사용자들에게 유동IP를 제공한다. IP에 대한 자세한 개념은 알아서 검색하시고 유동 IP를 쓰

    는 이유는 사용자가 많아서 모두 고정IP를 쓴다면 IP주소가 부족해지기 때문이다. 듣기로는 실제로

    어느 지역은 할당된IP가 부족해서 인터넷 접속이 일시적으로 안될때도 있다고 한다. 어쨋든 위그림

    처럼 자신이 쓸 홈페이지 이름을 지정해준다. 근사모 홈페이지에선 친절하게도 이런서비스 까지 제

    공을 해줘서 기본주소로 XXX.apmsetup.net 의 주소를 사용할수있다.

    8080포트를 쓸경우에 XXX.apmsetup.org를 사용할수도 있는 편의를 제공한다.

    사용자 삽입 이미지

    근사모 홈페이지에서 이렇게 신청을 하면 메일인증을 받고 해당 계정을 사용할수 있게 된다. 계정은

    한개만 되는것이 아니라여러개를 신청할수있지만 쓸데없이 많이 신청할필요는 없을것이다.

    (후에 설명할 가상호스트에서 왜 여러개의 계정신청이 필요한지설명하겠다.)

    사용자 삽입 이미지

    PHP환경설정 란이다. 일단 모든 부분에 있어서 기본적으로는 손댈곳이 없고 가장 주가 되는곳은

    File upload size가 될수있겠다.20Mb가 기본설정 되있고 늘릴수 있다. 이 설정은 PHP를 기반으로

    한 제로보드의 자료실 기능에서 매우 중요한 설정이라 할수있겠다.제로보드에 대해서는 후에 설명하

    도록 하겠다.(게시판을 대용량 자료실로 쓰실분들에게는..)

    사용자 삽입 이미지

    My SQL root 패스워드 지정 란이다. 이곳에서 별달리 수정할것은 없다.
    (PHPmyadmin에 로그인 할때 패스워드를 지정해주는 곳인데 수정방법은 이 메뉴에서 하는 방법과
     커맨드창을 띄워서 하는 방법이 있다.)

    앞의 강좌에서는 설치가 끝난 APMsetup의 내부설정과 실제 계정이름을 쓸수 있게 하는 방법에

    대해 알아봤다. 앞서말한것과 같이 IP로도 접속가능하며 근사모에서 제공하는  DNIP기능만 사용할

    필요는 없다는 것이다. 주소가 마음에 들지 않으면 다른 업체의 이런 유동IP를 고정도메인으로 맵핑

    해주는 무료서비스 하는곳이 많으니 찾아보면 도움이 될것이다. 이제 프로그램 설정도 끝났고

    홈페이지를 확인해 봐야하는데 몇가지 APMSETUP의 폴더에 대해서 알아보도록 하겠다.

     설치시 기본 폴더는 C:\APM_SETUP 이다 물론 다른곳에도 설치 할수있지만 여러가지 설정의

     편의로 C드라이브의 루트에 설치하는것을 권장한다.

     일단 자신의 홈페이지를 확인하는 방법으로 http://127.0.0.1 을 쳐보면 APMsetup.com 이 뜨고

     관리자 패스워드 설정을 해주라고 할것이다. 일단 설정해준다. 초기 패스워드는 아마 apmsetup 일

     것이다. 다른 포트번호, 예를 들어 9999를 용한다고 하면 http://127.0.0.1:9999 를 사용해서 들어가

     야한다. 초기화면에 페이지를 찾을수 없다고 뜨면 뭔가 잘못된것이다.

     아니면 http://localhost 를 쳐도 같은 결과를 볼수있다.

      그럼 홈페이지 파일은 어디에 저장되는가 하면 C:\APM_SETUP안의 htdocs에 저장이 된다.

      폴더가 바로 기본적으로 홈페이지 일 저장이나 게시판 설치등을 할수 있는 폴더이다. 물론

      폴더명을 바꿀수 있으나 설정파일도 모두 바꿔야 하므로 그대로 쓰길 장한다. 그외에 server

      폴더내엔 apache와 mysql의 어플리케이션과 설정 파일들이 있다. 자신의 홈페이지를 확인하는

      법으로 index.html 파일을 만들어 htdoc에 집어넣어본다.

    사용자 삽입 이미지

    이와 같이 자신의 홈페이지를 볼수있다. 기본적으로 index.html을 index.php등을 로드하며 이또한

    APMsetup의 아파치 환경설정에서 Directory index탭을 보면 쉽게 설정할수있다.

    참고로 127.0.0.1 이란 IP는 자신의 컴퓨터의 루프백 IP이다.

    쉽게 말하자면 자기 컴퓨터 만의 IP라는 것이다.

    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    (이 강좌는 운영자의 싸이월드 미니홈피 http://cyworld.com/hy313 에서 보실수 있습니다.)

    90년도 후반부터 현재까지 인터넷사용자가 기하급수적으로
     늘어나고 있다. 80년대부터 90년대 까지

    VT기반의 텔넷 서비스를
     이용하던 인터넷사용자들은 90년대에 출시된 윈도우3.1과  Novell Netware

    에서 개발된 Winsock과 Mosaic을 통한 편리한
     정보검색도구에 매료되어 많은 사용자들이 모뎀을

    사용했다.
     시간이 지나 윈도우95에 인터넷익스플로러와 양대산맥을 이루던  넷스케이프 네비게이터

    와 함께 한국 인터넷은 발전해갔지만
    이때까지만 해도 PPP연결을 위해 약간의 설정을 해줬어야했고

    모뎀의 느린속도 덕분에 텔넷서비스는 살아남을수 있었으나
     ISDN이 상용화되고  후로 ADSL의 상용

    화로 인터넷속도와
     편의성이 향상됨에 따라  모뎀을 사용하던 텔넷서비스들은 모습을  감췄다. 90년

    도 후반에
     정부차원의 인터넷PC붐으로 많은 가정들 이 싼값에 컴퓨터를 보유하고 인터넷을 할수있

    게 됐으며 갈수록
     PC부품값이 하락해  요새는 왠만한 가정집들은 PC를 두대이상  보유하고 있다.

    다.
     필자의 경우도 PC 세대와 노트북 1대를 보유하고 있다. 일부러 사서 그렇게 된것이 아니라 업그

    레이드를 하고 남는
     부품들을 버리지 않고 시스템구축을 해서 놔둔것이라 그렇게 된것이다. 사실 개

    인적으로 웹서버를 운영하는데 있어서 PC
     속도는 아주 많이 중요하지 않다. 셀러론 급의 컴퓨터와

    높은
     대역폭의 인터넷서비스를 쓰면 개인용으로 충분하다. 기업단위의 웹서버 운영에  있어서는 상

    당히 높은 수준의
    보안시스템과 수십만의 이용자를  대비해야겠지만 개인웹서버는 이럴필요가 없다.

    어떻게 보면 텔넷서비스 시절의 소모임등의
     동호회 운영이 인터넷 카페등으로 발전.. 이제는 점차적

    으로
     개인 홈페이지 운영(개인웹서버를통한)으로 발전할것 같다는 개인적인 생각이다. 어쨋든 이렇

    게 남는 컴퓨터나 고성능의
    최신컴퓨터로 개인 웹서버를 운영하고 싶은 사용자들을 위해 필자의 경

    험을 통한 강의(?)를 할것이다. 강좌내용은 기초적인
     것이고 이론을 배제한 오로지 결과만을 위한 강

    의가 될것이다.

    APM(Apache,PHP,My sql)을 합한 약어이다.. 이론을 모두빼도


    이정도까진 알고있어야 할듯싶다. APM을 쓰는 이유는 간단하다.


    설치가 쉽고 웹서버 하면 리눅스를 많이 떠올리는데 이것은 윈도우


    기반의 웹서버 이다. 웹서버 구축에 접근하기가 쉽다는 것이다.


    아직까지 리눅스는 개인사용자에게 어려운감이 없지 않다.


    X윈도우가 있긴해도 아직까지 리눅스는 설정을 위해 커맨드를


    직접 쳐줘야되는 불편한 시스템이다. 내맘대로 OS를 수정할수


    있다라는 것은 많이 아는 사람들 얘기일뿐 리눅스를 제대로 쓰려면


    공부를 해야가능하다는 것이다. 5~6년전쯤에 모컴퓨터 판매업체


    에서 윈도우 라이센스 비용을 줄이려고 시스템에 리눅스를 설치


    해서 판매한적이 있는데 결과는 물론 대실패였다.


    윈도우하면 윈도우 95,98,2000,xp,vista 정도로 생각들 많이


    할것이다.


    그러나 이속에 꽤 많은 제품군이 숨어있다는 것은 모르는 사람


    들이 많으며 필요도 없는데 용량만 차지하는 서버군 제품을


    사용하는 사람도 많다. 일단 본론으로 돌아가 APMsetup을


    사용가능한 윈도우 제품군을 나열해보겠다.


    Windows 95 - 아직도 쓰는사람이 있는지 모르겠지만 불가능하다


    Windows 95 OSR,OSR2 - 마찬가지로 불가능하다.


    Windows 98,98 Second Edition

     - 가능하지만 보안상의 문제와
     
    제어가 번거롭다.


    Windows 2000 - 물론 가능하다.


    Windows 2000,2003 server

     - 가능하지만 윈도우의 서버제품군에는 IIS가 설치되어있다.

        나중에 설명하겠지만 IIS가 있는상태로는 APM을 이용하기가

        약간 번거롭다.


    Windows XP(Home Edition,Professional Edition,64bit edition

                       ,Media Center 2005)

     - 모두 가능하다.


    Windows Vista(Beta2)


    - 아직 정식 출시는 되지 않았지만 시험해본결과 가능하다.
      (덧붙혀서 Windows Vista 정식버전에서도 사용이 가능하다.
       필자의 경우 현재 Vista ultimate(32bit)에디션을 사용중이다.)


    앞서의 강좌에서 APM이 사용가능한 윈도우 제품군과 리눅스에 대한 잡소리를 해봤다. 필자는 x윈도

    우가 없던 때에 주로 리눅스를
    사용하고 군대가기 조금 전부터 갔다온 이후로  리눅스를 전혀 사용해

    보지 않아서 그저 도스의 cd명령어 대신 ls를 사용한다는
    것밖에 기억나지 않는다.. 램같은 내머리가

    원망스러울 뿐이다.
    그래서 웹서버 구축을 하기 위해서 알아봤던게 APM이고 이걸 쉽게 설치해주는

    패키지 형태인 APMsetup을 쓰게 된것이다.
    컴퓨에 대한 전반적인 기본적 이해가 갖춰진 상태면

    APMsetup
    을 사용하기 무난하다. 하지만 아무리 쉽다고 해도 ADSL모뎀에 접속하는것 처럼 원클릭

    으로 끝나는 것은 아니고 이것도 아주약간
    의 설정은 거쳐야 된다. 그러나 리눅스에 아파치서버를 사

    용하는
    것 보다는 정말 굉장히 쉽다. 필자가 쓸 강좌는 APMsetup을 간단히 이용해보는 정도이며

    PHP나 JSP,ASP등을 깊이있게
    공부하려는 사람들은 별 필요없는 강좌이다. 이강좌의 중점은 실제로

    자기
    컴퓨터를 이용한 서버구축일 뿐이다. 그외의 옵션은 알아서 해결하길 바란다.


    일단 준비물로는 APMSETUP을 다운로드 해야된다.


    http://www.apmsetup.com/download/?mirror=1&filename=APM_Setup5_2006_01_23.exe(출처 : 근사모(http://apmsetup.com)


    바로 이툴이 APM서버를 편리하게 구축할수있는 APMSETUP이다. 설치방법은 근사모에서

    확인하길 바란다.(덧붙혀 설치방법이라고 해봐야 별것 없다. 그냥 다음버튼만 눌러주면 된다

    몇가지 주의할점은 처음 인스톨 한다면 반드시 Full install을 할것! 그리고 경로는 기본경로인

    C:\APM_Setup을 사용하는것이 좋다.)

    근사모에서 설치방법을 확인하면서 설치를 마쳤다면 이제


    약간의 설정을 해줄때이다. 이전에 알아둬야 할것은 인터넷


    대역폭이다 앞서 강좌에서 잠시 말했듯이 동시 접속자 10명이상을


    수용하려면 속도보다는 대역폭이 넓어야 한다는것이다. 대역폭이


    좁으면 동시접속자가 많을때 데이터 전송에 어려움이 많다.


    대역폭에 대해서는 찾아보길 바란다. 그저 블로그 형태의 게시판


    운영이나 작은 크기의 파일을 다루는 웹서버에서는 그다지 필요


    없는 개념이지만 많은 웹서버 구축자들이 이렇게만 이용하려고


    하진 않을것이라 생각한다. 웹서버에 게시판을 구축하는것은


    나중에 알아보기로 하고 일단 몇가지 설정에 대해 설명하겠다.


    기본적으로 웹서버는 윈도우에서 80번 포트를 이용한다.


    이는 웹서버 포트이다. 흔히들 쓰는 프루나는 4662포트를 기본으로


    이용하며 1~1000번 까지의 포트는 윈도우에서 예약사용할 포트


    들이 많다. 포트번호는 총 1~65535번 까지의 포트가 있다.


    포트번호가 중요한 이유는 APM은 당연히 80번 포트를 사용하기


    때문이다. 한마디로 아파치 서버는 80번 웹서버 포트를 사용한다고


    하면 되겠다. 여기서 문제는 국내의 ISP들 즉 하나로통신이나


    메가패스등은 보안을 목적으로 웹서버 포트를 막아놓은서비스가


    대부분이라는 것이다. 이경우에 이 포트가 막힌 서비스를 사용하는


    사용자는 아무리 설정을 해줘도 근본적으로 막힌 80번 포트를


    사용할수 없다는것이다. 그렇다고 전화해서 80번 포트 뚫어주세요


    한다고 될리는 만무할것이고.. 필자의경우는 80번 포트가 뚫려


    있다. 80번 포트를 사용하지 않을경우 어떤 문제가 있냐면 제일


    먼저 홈페이지 주소가 길어진다는 것이다. 예를 들어 필자의


    홈페이지를 보자면 http://xens.apmsetup.net 이다.


    80번 포트는 기본포트이므로 http://xens.apmsetup.net:80


    에서 80을 쳐주지 않아도 접속 가능 하다는 것이다. 그러나 다른


    포트를 사용하게 되면 예를들어 80번 포트대신 9999포트를


    사용한다면 http://xens.apmsetup.net:8080 으로 접속을 해야되는


    불편이 있다.


    앞서 포트번호에 대해 설명하였다. 이제는 80번 포트가 막혔을때 포트 포워딩을 사용한 포트 열기에

    대해 알아보도록 하겠다.
    포트포워딩을 사용하는 이유는 앞서에서처럼 80포트가 막힌사용자들을 위

    한것이다. 이것보다 APM에 대한 설정을 먼저
    설명해야 옳지만 일단 포트를 제대로 사용하지 못하면

    자신의
    웹서버의 홈페이지를 다른 사람들에게 게시하지 못하는 중요한문제가 있어서 먼저 설명하도

    록 하겠다. 포트포워딩이란 간단히
    쓰지 못하게 막혀있는 포트를 다른포트에 명령을 내려서 쓰게


    하는 것이다. 윈도우XP SP2를 사용하는 사용자들은 별쓸데없는
    윈도우 기본방화벽때문에 p2p서비

    스나 이런 웹서버 사용에 곤란을
    겪게되는데 방화벽 해제와 포트포워딩에 대해 설명하겠다.


    사용자 삽입 이미지

     

    (클릭해서보세요) 제어판의 네트워크 연결을 보면 이렇게 자신의컴퓨터에 연결된 이더넷카드(랜카

    드)등의 연결 상태를 보여준다.필자의 경우 필자의 컴퓨터는 현재 인터넷을 다른컴퓨터로 공유받아

    쓰는 중이다. 사용자마다 연결되있는 형태가 다양하다.가장 주가 되는것은 직접들어오는 회선에 대

    한 설정이다.외장형 ADSL모뎀을 쓰는 사람들은 컴퓨터 안의 랜카드를 통해 접속을 하게 되고 내장

    형을 쓰는 사람들은 컴퓨터로 바로 연결이 된다. 여기서는 인터넷 공유에 대한 강좌가 아니므로 넘어

    가고다른 인터넷 공유강좌에서 다시 설명하도록 하겠다. 위의 그림과 같이 연결속성에서 설정을

    눌러주면..

    사용자 삽입 이미지

    이렇게 예외라는 항목이 뜨게된다. 매우 간단하다 여기서 보면 현재 APM이 설치된 상태라서 방화벽

    을 적용할 예외프로그램에 아파치 서버가 등록되있는것을 볼수있다.. 이걸 보기전에 옆의 탭에서 방

    화벽 사용안함 설정을 먼저 해줘야 한다.


    사용자 삽입 이미지

    이렇게 해줬는데 안될때가 있다 이때는 고급탭에서 연결에 대한 방화벽 사용체크를 해제해주고

    서비스 설정에서 80번 포트를 사용
    할 IP나 컴퓨터 이름을 써주면 된다. 컴퓨터 이름은 바로

    사용자 삽입 이미지

    제어판의 이곳에서 확인할수가 있다. 위의 설정에서 물론 사용할 포트추가/편집을 할수가 있다.

    80번포트가 근본적으로 막힌경우 81,82 혹은 8080 또는 9999등의 포트를 추가해서 사용하면 된다.


    여기까지가 윈도우에서의 포트포워딩에 대한 설명이고 공유기를사용하는 경우엔 공유기의

    포트포워딩을 사용하면 된다.

    (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에서 해줄수 있다. 어쨋거나

    여기까지 간단히 구축방법을 알아보았다.
    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License

    이번에.. 나도 까먹지 않으려고 강좌들을 몇개 만들고 현재 vmware로 다른포트를 사용해서

    그전에 운영하던 metal mania를 켜놓은 상태이다. 메탈매니아를 만들때 주소가

    http://xens.apmsetup.net 이었는데.. 문제는 코딩된 html 문서들이었다.. 제로보드4 게시판 까지는

    다수정했고.. 이제 남은건 제로보드게시판 내의 써놓은 내용물 들이다.. 뭐 별로 써놓은것도

    없기때문에 몇개만 고치면 되지만 귀찮아서 기본적인것만 다고치고 방치해두고 있는중이다 ㅡㅡ;

    요거야..별문제 없지만.. 그다음 문제는 우리집에서 이 테터툴즈 블로그를 운영할때이다.

    가상머신이야..NAT설정하고 프로그램내에서 포트포워딩 해주면 끝이지만 우리집 인터넷 네트워크

    구조는 그림과 같다..;;

    사용자 삽입 이미지

    ADSL모뎀은 내방컴퓨터에 있다. 문제는 지금 그컴퓨터를 자취방에서 사용하는 상태이고 집에

    다시 가서 있을때인데.. 나는 이제 내컴퓨터로 인터넷공유를 거실컴퓨터에 해주고 싶지가 않아서

    이다.. 내가 받는걸 원하는데.. 요게.. 운영체제가 나는 비스타 거실놈은 xp이다 보니 문제가 생긴다

    거실컴에서 NAT를 사용해서 포트포워딩을 해주려면 윈도우2000서버 버전등을 설치해야될텐데

    설치해서 세팅한다는게...것참..귀찮지 아니할수없다.

    지금 거실컴퓨터는 ..내방에 있는상태이고 랜케이블 커넥터 한쪽은 어디엔가 꼽히길 바라며

    외롭게 거실에서 자리를 차지하고 있다. 그래도 아마도..윈도우2000이나 2003서버를 거실컴퓨터에

    설치할 일은 없을듯 싶다..ㅡㅡ; 그래서 공상했던건 그누군가가..나한테 컴터를 기증한다면..ㅋㅋ

    윈도우 2000이나 2003서버가 돌아갈만한 사양의..아래와 같은 나한테는 이상적인 네트웍을 구성

    하고싶은것이다..거실 컴퓨터는 라우터 식으로 돌리는 것이다..뭐..방화벽도 되고 좋지 않은가..
    사용자 삽입 이미지
     하지만..아파트내에 메가패스 광랜이 들어오고 좋은 조건이었는데도 우리아파트가 쫌 오래되서
     
     살짝 공사해야 한다한다 해서 오마니께서 "No!"라고 선언한 판에.. 랜케이블로 온집이 지렁이

     돌아다니듯 되면 어무이가 가만 놔두지 않을께 뻔하기때문에 저 구성은 그저 내머리속에서 맴돌

     기만 할뿐.. 실행하기엔 너무나 먼 당신이다.. ㅜ_ㅜ
     
     음.. 글고 Metal mania 홈페이지에 대해 살짝 주절대겠다..
    사용자 삽입 이미지

    사용자 삽입 이미지

    자.. 보시다시피 06년과 07년의 서버방문수, 페이지뷰를 공개한다..ㅋ 처음엔 그래도 방문자가..그럭

    저럭 있었지만.. 개인컴퓨터를 서버로 해서 운영하고 06년엔 나자신도 홈페이지를 갱신하는것이

    힘든 한해였고 더안좋은건 개인컴퓨터이다 보니..이게 귀찮으면 끄고 잘때도 있고해서 24시간

    돌아가진 않았다는 것이다.. 뭐그결과 요모냥이 됐는데 때문에 이왕에 이렇게 된거. apm들도

    업그레이드 할겸해서 테터툴즈로 블로깅 하려고 결심한 것이다. 암튼.. 우리집 네트웍구성에

    대해 공상을 되새김질 해봤다..
    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    앞서강좌에선 VMware의 가상머신 세부설정에 대해서 캡쳐화면과 함께 훑어봤다 이번엔 Vmware

     tools설치방법과 몇가지 헛소리들로 강좌를 메꾸고 Vmware활용법에 대한 강좌를 마치도록 하겠다.

    사용자 삽입 이미지

    기본적으로 vmware에서 가상머신을 설치하고 나면 os에 따라 틀리지만 화면해상도가 640*480혹은

    800*600으로 제한되어있는데 요새 모니터들은 화면크기부터가 참 틀린것 같다 현재 필자는 꽤

    오래된 CRT 17인치 모니터(현대 이미지퀘스트 q770)를 사용중인데 요새 블로그들만 봐도 그렇고

    홈페이지도 1024*768해상도를 기준으로 제작돼왔던 것들이 점차 더넓은 바뀌어가고 있다. 어쨋든

    Vmware tools를 설치하면 화면 해상도를 1024*768이상으로 설정할수도 있고 USB에대해서도

    제대로 지원할수 있게 해준다. 윈도우던 리눅스던 간에 위화면과 같이 Install Vmware tools를

    선택하면 경고화면이 하나 뜨는데 OS가 실행되지 않은상태에서 실행했다면 취소하고 켜고 실행

    하라는 잔소리고 OS가 실행된상태에서 이를 수행하도록 하자.

    사용자 삽입 이미지

    이처럼 설치화면이 뜨게되고 next만 몇번 누르면 vmware를 처음 설치할때처럼 간단하게 끝난다.

    리눅스에서는 이처럼 자동으로 설치화면이 뜨진 않고 가상CDROM에 vmware tool을 설치할수있는

    파일이 들어있는 이미지 파일만 뜨게 된다 리눅스에서 설치하는 방법은 따로 리눅스 강좌쪽에서

    설명하도록 하겠다. 위와같이 설치를 끝내고 나면 아래와같이 높은 해상도를 선택할수있게된다.
    사용자 삽입 이미지

    여기까진 vmware tool설치에 대하여 알아봤고 vmware내에선 웹서버도 운영할수있다. 이강좌에선

    웹서버설치에 대한 강좌를 진행하는 것이 아니지만 참고를 위해 몇가지 쓰겠다. 기본적으로 웹서버

    는80번 포트를 사용하게 된다. 우리가 인터넷 주소 http://xens.apmsetup.net을 쳤다면 이는

    http://xens.apmsetup.net:80/ 을 의미하는 것인데 생략되있을뿐이다. vmware내에서 웹서버를

    운영할때 문제점이 뭐냐면 바로 이 포트이다. 만약 호스트 컴퓨터에서 웹서버를 운영하고 있지

    않다면 상관없는 부분이지만 호스트에서 웹서버를 운영하는 상태라면 80번포트는 이미 사용되고

    있고 최근 추세에따라 APM(Apache+PHP+Mysql)까지 쓴다면 Mysql의 기본포트인 3306번 포트

    까지 사용하고 있게되는 것이다. 어쨋든간에 VMware에선 이러한경우를 위한 포트포워딩 설정

    까지도 있다. 캡쳐화면은 포트포워딩을 통해 호스트컴퓨터의 9997번 포트를 가상pc에 부여해서

    APM서버를 실행하고 홈페이지를 띄운 모습이다. 물론 이를 제대로 실행하려면 아파치 서버의

    httpd.conf파일(웹서버설정파일)을 적절히 수정해줘야 한다.

    사용자 삽입 이미지

    이화면은 9997포트를 포워딩 해준 웹서버가 잘 작동되는지 호스트OS에서 확인해본 결과이다.

    보는대로 접속이 잘이뤄진다. 이처럼 단순한 개인홈페이지 웹서버는 vmware를 이용해서 운영

    해보는것도 나쁘지 않으나 호스트 컴퓨터의 사양이 vmware가 구동할때 전혀버벅거림 없는 사양이

    아니라면 서버에서 파일을 읽어들일때 딜레이가 생기므로 추천하는 방법은 아니다.
    사용자 삽입 이미지
    여기까지 Vmware의 가상머신 설치법과 웹서버 설치 활용법에 대해 알아보았다. vmware는

    정말 극찬을 아낄수없는 프로그램이다. 개인적으로는 메인 OS를 윈도우에서 바꿔본적이없고

    처음 쓰는 프로그램을 쓸때 메인OS에 설치후 잘못되면 레지스트리가 지저분해지고 쓰기에

    불편한데 vmware를 쓰면 이러한 설치테스트도 부담없이 할수있다. virtual pc도 써봤지만 개인적으

    로는 vmware가 더 편리하고 세부설정 기능도 더 많다고 생각된다. 나머지 더 상세한 부분들은

    쓰다보면 금방 알수있는 부분이기때문에 모두 생략했으며 아는 한도 내에선 질문에 답변하도록

    하겠다. 이곳의 강좌들은 모두 정말 초보자들을 위한 강좌이고 본인도 고수는 아니니 큰태클은

    거부하도록 하겠다. (긴글들 읽어주셔서 감사합니다.^^)

    - 포트포워딩 사용법 -
    (점선 밑부분은 포트포워딩에 관해 리눅스웹서버를 vmware에서 구축시에 방법에대한 셋팅방법
     을 설명한 것이다.)
    -------------------------------------------------------------------------------------

    아래 사진은 Vmware의 포트포워드 기능을 설정하려는 사진이다. 사진에서 보는것과 같이

    edit->virtual network settings 에 들어간다.
    사용자 삽입 이미지

    위의 과정을 거치면 여기 띄워진 창의 순서대로 NAT을 누르고 edit란 메뉴가 보이는데 그것을

    누르면 NAT settings창이 뜬다. 여기서 port forwarding을 클릭하면 Port Forwarding 창이 뜨는데

     처음엔 아무것도 없다. 여기서 Add를 클릭해주면 Map Incoming port 창이 뜨게 된다.

     Host port가 의미하는것은 가상컴퓨터(vmware)가 아닌 현재 쓰고있는 컴퓨터의 포트를 지정해

     주는 것이고 우리는 웹서버(80)번 포트를 사용할것이기 때문에 80번 포트를 써주었다.

     만약 실제컴퓨터의 OS가 윈도우고 윈도우 서버를 운영한다고 하면 80번 포트 대신에 위에서

     언급했던 8080이나 9999포트를 써줘도 무방하다.

     그밑의 Virtual Machine IP Address는 쉽게 VMware의 가상 랜카드 IP주소를 말한다.(리눅스에서)

     이는 리눅스 터미널에서 'ifconfig' 라는 명령어로 확인할수 있다.(ipconfig는 윈도우용..)

     port는 동일하게 설정해주면 된다. 이런 설정을 거친뒤에 리눅스에서 아파치 서버데몬을 실행

     해보고 호스트 컴퓨터에서(실제컴퓨터) 브라우저로 실제컴퓨터에 부여된 IP를 입력해서

     테스트 해본다 (예:만약 실제 컴퓨터 IP가 123.45.25.2 라면 http://123.45.25.2를 입력해본다.)

     여기서 홈페이지 내용이 뜬다면 성공한것이다.
    사용자 삽입 이미지
    -----------------------------------------------------------------------------------------
    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    (브라우저에서 http://localhost 를 입력해서 apache가 작동되고있는지 확인한모습..)
    사용자 삽입 이미지

    앞서 강좌에서 아파치서버를 리눅스에 설치 하는것까지 알아보았다. 이제는 환경설정 파일을 수정

    해봐야 할때다. 사실 요즘 홈페이지들 특성상 APM(Apache+PHP+Mysql)을 설치하는 경우가 많으나

    여기서는 아파치 서버 구동 자체에만 중점을 두겠다. 일단 웹서버 설치 그리고 구동후 궁금한것이

    내가 서버에 올릴 홈페이지를 저장할 폴더가 어디인가일텐데 httpd.conf 파일을 열면 찾아볼수있다

    기본적으로는 htdocs라는 디렉토리(사진1 참조) 에 저장되며 이 디렉토리는 아까 설치했던

    usr/local/apache 디렉토리 내에서 찾을수있다. 필자의 경우는 이 환경설정 파일에서

    기본 디렉토리를 public_html로 수정하였다. 밑의 그림이 그 예이다.
    사용자 삽입 이미지

    ★(사진1)
    사용자 삽입 이미지
    (학교에서 아파치 서버가 잘 설치 됐는지 안됐는지만 확인할것이라.. 소스는 대충 처박았다..
     이것을 기본 htdocs디렉토리에 저장하고나면 아래와 같은 사진화면을 볼수있게된다.)

    밑의 사진은 외부접속과 내부 접속을 확인해본 사진이다. 밑에서 설명하겠지만 이는 Vmware의

    NAT설정부분의 포트포워딩을 사용한것으로 80번포트(웹서버포트)를 리눅스에서 사용할수있게

    설정해준것이다. 물론 포트는 80번 포트외에 가장 많이 쓰이는 8080이나 9999등을 이용할수도

    있다. 케이블 모뎀을 쓰는 경우에 많은 사용자들이 80번 포트가 막혀있는 경우가 있는데 저런

    8080,9999등의 포트를 사용하는 방법도 있다. 어쨋든 접속 확인 방법은 브라우저상에서

    http://localhost/ 혹은 http://127.0.0.1 혹은 Vmware의 가상랜카드에 부여된 IP넘버를 입력해

    보면 된다.
    사용자 삽입 이미지

    아래 사진은 Vmware의 포트포워드 기능을 설정하려는 사진이다. 사진에서 보는것과 같이

    edit->virtual network settings 에 들어간다.
    사용자 삽입 이미지

    위의 과정을 거치면 여기 띄워진 창의 순서대로 NAT을 누르고 edit란 메뉴가 보이는데 그것을

    누르면 NAT settings창이 뜬다. 여기서 port forwarding을 클릭하면 Port Forwarding 창이 뜨는데

     처음엔 아무것도 없다. 여기서 Add를 클릭해주면 Map Incoming port 창이 뜨게 된다.

     Host port가 의미하는것은 가상컴퓨터(vmware)가 아닌 현재 쓰고있는 컴퓨터의 포트를 지정해

     주는 것이고 우리는 웹서버(80)번 포트를 사용할것이기 때문에 80번 포트를 써주었다.

     만약 실제컴퓨터의 OS가 윈도우고 윈도우 서버를 운영한다고 하면 80번 포트 대신에 위에서

     언급했던 8080이나 9999포트를 써줘도 무방하다.

     그밑의 Virtual Machine IP Address는 쉽게 VMware의 가상 랜카드 IP주소를 말한다.(리눅스에서)

     이는 리눅스 터미널에서 'ifconfig' 라는 명령어로 확인할수 있다.(ipconfig는 윈도우용..)

     port는 동일하게 설정해주면 된다. 이런 설정을 거친뒤에 리눅스에서 아파치 서버데몬을 실행

     해보고 호스트 컴퓨터에서(실제컴퓨터) 브라우저로 실제컴퓨터에 부여된 IP를 입력해서

     테스트 해본다 (예:만약 실제 컴퓨터 IP가 123.45.25.2 라면 http://123.45.25.2를 입력해본다.)

     여기서 홈페이지 내용이 뜬다면 성공한것이다.
    사용자 삽입 이미지

    여기까지 Vmware를 활용한 리눅스 웹서버 설치 강좌를 마친다. 사실 인터넷에서 찾아보면

    이에 관해 많은 내용들이 있다. 나도 리눅스를 잘사용하지 않는 초보이기 때문에 같은 초보의

    입장에서 설명해줄수 있을듯 해서 이강좌를 만든것이고 도움이 됐으면 한다. 인터넷에서 본

    대다수 글에서는 그저 커맨드만 입력하라고 쫙 써놓은 글이 많은데 정말 입문자에게는 터미널이

    왜 있는지도 모르는 경우가 많다. 그리고 어디에있는지도 왜써야하는지도.. 그래서 부족한 점도

    있지만 처음부터 쭉 설명한것이다. 사진캡쳐가 제멋대로 되어있는부분이 많은데 충분히

    할수있을것이라 생각되며 궁금한점은 아는데 까진 답변하도록 노력하겠다.
    신고
    크리에이티브 커먼즈 라이선스
    Creative Commons License
    (매끄러운 진행을 위해..반말좀 쓰겠습니다..죄송 ㅡㅡ;;)
     
    리눅스로 웹서버 구축할일은 사실 없었다. 윈도우 아파치 서버를 항상 이용해와서 다들 M$라고

     욕들하지만 난 개인적으로 GUI(Graphic User Interface)를 좋아하기 때문에.. 많은 커맨드 입력을

     요구하는 리눅스는 기피해왔었다. 사실 잘다루지도 못한다. 어쨋든.. 공교롭게도 이번에 학교에서

     해야될것이..1차 과제가 리눅스로 아파치서버를 구축하는 것이어서 제로보드4와 Mysql 5.x와의

     삽질의 후유증이 끝나기도 전에.. 구축을 하게됐다. 사실은 웹서버만 달랑 설치했다고 끝나는건

     아니지만 그래도 설치라도 해야 뭘 설정을 하던 말던 할것 같아 같은 초보의 입장에서 상세히

     이 강좌를 진행하려 한다. 그림파일이 캡쳐하기가 귀찮아서 다소 미흡하지만 이해해주길 바란다..

     일단 필자의 준비물은 다음과 같았다.

    1.Vmware workstation 5.5.3 build 34685(현재기준 최신판)
    2. Fedora core 4(CD #4)
    3. Apache 2.0.50(Linux용 tar.gz형식으로 이루어짐..zip파일은 윈도우용..)
      (파일은 http://www.apache.org 에서 구할수 있다.)
    4. 설치를 기다리는 인내심

    (Vmware에대해 잘 모른다면 VMware는 가상컴퓨터라고 쉽게 생각하면 되며 이는 나중에 따로
     강좌를 만들 생각입니다. 여기서는 리눅스로 웹서버를 만드는 과정만을 소개하겠습니다.)

    사용자 삽입 이미지
    여기에 터미널이 숨어있다.. 이렇게 들어가기 불편하면 오른쪽 마우스를 클릭해서 패널에 추가해서

    들어가면 편하다.

    사용자 삽입 이미지
     이화면은 페도라 코어 6을 설치하고 터미널 창을 실행시킨 모습이다. 터미널창은 프로그램->시스템
     도구->터미널을 살짝 눌러주면 위와 같은 창이 뜨게되며 여기서 명령어를 입력할 수 있게된다.

     사진에서 나오는 모습은 Apache서버 압축(tar.gz)파일을 풀어놓은 상태이다. 여기까지에 대해서

     설명하겠다. 일단 터미널 창을 띄운뒤엔 화면에 '[root@localhost local]# ' 이라고만 뜬다.

     그럼 여기서 나는 usr디렉토리 내의 local디렉토리 내의 apache디렉토리에 아파치서버파일의

     압축을 해제 할것인데 방법은 아래와 같다.

     (터미널창)
     [root@localhost local]# cd usr/local <--cd 부분부터 입력해주면 된다.
     [root@localhost local]# tar xzvf httpd-2.0.50.tar.gz <-- 이파일은 이곳에 옮겨놓은 아파치서버
      압축파일이다. usr/local 디렉토리를 검색하고 싶다면 컴퓨터->파일시스템을 눌러보면 금방
      찾을수있고 저 다운로드 받은 파일은 그냥 잘라서 붙혀넣기 해도 무방하다. 어쨋든 이명령어는
      원본 파일의 압축을 ' httpd-2.0.50 ' 디렉토리에 쫙 풀어줄것이다..

    사용자 삽입 이미지
     아파치 서버 파일들을 컴파일 중인 모습이다. 자여기서.. 한가지 팁! 필자의 경우 처음엔 Redhat

     Linux enterprise as4를 설치했으나 그다음에 Fedora 코어 6을 설치했었다. 여기서 중요한 실수를

     한가지 했는데 사용자 설치를 선택했다면 반드시 개발자관련 패키지들을 설치 하라는 것이다.

     다른건 별 쓸모없고 GCC컴파일러가 설치가 안되있다면 소스컴파일 설치를 할수가 없다.

     (윗 사진과 같은 방법이 소스컴파일설치이다..RPM패키지 설치도 있으나 다른사람들도..다들
      소스 컴파일설치를 추천한다..이유는?...나도 잘모른다..;)
     
     윗 화면이 나오게 하려면 다음과 같은 명령어들을 또 쳐줘야 한다.

     (터미널 창)
    [root@localhost local]# cd httpd-2.0.50 <-아까 압축을 풀었던곳으로 이동
    [root@localhost httpd-2.0.50]# ./configure --prefix=/usr/local/apache --enable- (아래와 쭉붙혀쓴다.) rule=SHARED_CORE --enable-module=so <-설치환경을 지정한다고 보면되겠다. 윗처럼 쭉 써주면 된다.

     실행하고 나면 위와 같이 컴파일 하는 화면이 뜨게 된다. 시간이 쪼금 걸린다.(2~4분정도..)

    ★사진(1)
    사용자 삽입 이미지

    ★사진(2)
    사용자 삽입 이미지
    ./configure 명령이 다끝나고 터미널에서 다시 [root@localhost httpd-2.0.50]# 이뜨면

    거기서 곧장 make란 명령어를 입력하면 사진(1)과 같은 모습을 볼수있고 그게 끝나고다시

    [root@localhost httpd-2.0.50]# 이 뜨면 이번엔 make install을 입력하면 사진(2)같은 화면을

    2분정도 감상할수있다.(캡쳐하다 어느게 make를 입력했을때였는지 make install때였는지 헷갈

    리는데..별상관없다..)

    사용자 삽입 이미지

    컴파일 성공여부를 확인해본다.
    (터미널창)
    [root@localhost httpd-2.0.50]# usr/local/apache/bin/httpd -l (i가 아니라L)
    mod_actions.c
    (..중략)
    mod_so.c <-이게 보여야 컴파일이 성공한것이다.

    사용자 삽입 이미지
    자! 여기까지 다됐다면 위의 화면 처럼 입력해준다.
    [root@localhost httpd-2.0.50]# /usr/local/apache/bin/apachectl start

    위의 명령어는 아파치서버데몬 실행 명령어이다. 일단 포트가 열리게 되므로 열린뒤에는

    로그아웃하여 다른 사용자 계정으로 들어와도 아파치 서버는 살아있게된다.

    여기까지 아파치 서버 설치가 끝난것이고 다음강좌는 접속확인법, Vmware에서 해줘야

    할 내용을 설명하겠다. 만약 Vmware를 사용하지 않고 리눅스가 메인OS라면 여기까지만

    참고하면 될것이다.(홈페이지 수정방법이나 접속확인등은 다음 장에서 참고바람)

    (다음강좌에서 계속)


    신고


    티스토리 툴바