본문 바로가기

Skills/System

무선웹서비스 환경을 위한 APM 설치기..

1.들어가기 앞서.

- 필수준비물 : 서버. (데스크탑을 서버로 쓰든 어쨋든 컴퓨터면 된다.)
     마우스, 키보드.
     인터넷! (필수...다.. 웹서비스 로컬에서 혼자돌리지 않을꺼면..)

- 선택준비물 : 운영체제. (리눅스든 윈도우든 아무거나 선택해서 쓴다.)
         APM ( Apache 2.x, Php 4.x 이상, Mysql 아무거나 )
      => 버젼은 상관없지만 삽질의 정도가 변한다. 왠만하면 위에 말한대로 써라.


2. 스텝원 - 설치. ( 영어좀 쓴다. )
  큰 코스는 두가지가 있다.
  한개는 넥스트만 열라게 클릭하면 해결되는 코스.
  한개는 또 그 안에서 두~세가지로 나뉘어지는 코스다.

  일단 가장 쉬운 첫번째 코스. ( 사실 난 이코스 싫어한다. 왜? 윈도우거덩... 잘모르고 ㅎ)

  2.1. Windows 계열.
  - IIS 를 윈도우 씨디에서 선택해 설치한다. 참고로 NT 이상버젼에만 있을거같다.( 잘모른다 )
     - 인터넷 익스플로어를 열고 윈도우용 APM 을 다운받는다. (http://www.apmsetup.com)
  - 실행시켜서 설치한다. 참고로 다운받을땐 php setup for IIS 이걸 받아야 한다.
  - 설치 완료했으면 이제 당신의 윈도우는 웹서버가 된거다..
  - 모바일 설정을 위해 IIS를 열고 등록정보 들어가서 뜨는 탭들중에 HTTP 헤더
     탭을 클릭한다.
  - 맨 아래 MIME 매핑에서 파일 형식을 크릭하면 가운데 텍스트 박스에 등록된 파일 형식과
    그 박스 우측에 '새형식', '제거','편집' 등의 버튼이 뜰거다.
    거기서 '새형식'을 클릭하면 또 다른 작은 입력 폼이 뜨는데 거기다가 다음과 같이 입력,
    추가한다.
      연결된 확장명 컨텐츠 형식
      .wml text/vnd.wap.wml
      .wmls text/vnd.wap.wmlscript
  - IIS 재시작.

  두번째 코스.

  1. Linux 계열 ( Rpm 혹은 Deb 혹은 기타 여러가지 패키지 프로그램 이용시 )
  - 이게 더 귀찮다...소스설치보다. 설치는 쉽다.
  - 일단 레드햇 계열 특히 CentOS 를 기준으로 설명하겠다. (다른건 여건이 안됐다.)
  - yum -y install httpd 친다.
  - httpd-devel, mysql, php 도 다 이렇게 다운받아 설치해 준다.
     1원짜리 팁 => yum list > list 해놓고 list파일에서 grep으로 찾아도 된다.
     - php 모듈을 /etc/httpd/conf/httpd.conf 에 추가해 준다.
      라이브러리는 /usr/lib/php 에 박힐것이다.
  - /etc/httpd/conf/mime.types 를 열고 다음과같이 추가해 준다.
    물론 httpd.conf에 AddType 지시자로 설정해 줘도 된다.
      (있는지 없는지 보고 추가한다.)
      연결된 확장명 컨텐츠 형식
      .wml text/vnd.wap.wml
      .wmls text/vnd.wap.wmlscript
  - 아파치 리스탓.

  2. 쏘스컴파일. ( 위에께 더 귀찮을꺼다..모듈 적재하는 부분이 특히.. )
  - apache.org, mysql.org, php.org 를 들어가서 각 버젼에 맞는 소스패키지를 다운받는다.
  - tar 볼로 돼있을테니 알아서 풀어라..대충 tar vfxz 혹은 tar vfx 파일명 이걸로 끝난다.
  - 먼저 mysql부터 컴파일한다.
    ./configure --prefix=/usr/local/mysql; make; make install
     ( 멀티쓰레기환경이라면 make -j 32 정도! )
  - apache 컴파일 한다.
    ./configure --prefix=/usr/local/apache; make; make install
      ( 역시 멀티쓰레기면 위와 동일하게? )
  - php 컴파일한다. 참고로 아파치 2.0이상부터는 DSO 로 설치돼기때문에 은근 간단하다.
    ./configure --prefix=/usr/local/apache --with-apxs2=/usr/local/apache/bin/apxs \
            --with-apache-install=/usr/local/apache --with-mysql=/usr/local/mysql \
            --enable-module=so --disable-debug; make; make install
      ( 역시 멀티쓰레기면 알겠쥐~? )
  - /etc/httpd/conf/mime.types 를 열고 역시 추가한다..역시 httpd.conf에 추가해도 된다.
      (사실 앞에꺼 다빼고 이것만 하면 더이상 쓸게 없는데.. )
      연결된 확장명 컨텐츠 형식
      .wml text/vnd.wap.wml
      .wmls text/vnd.wap.wmlscript
  - 아파치 재시작..

  내용설명 간략.

1. wml이란?
  wap(Wireless Application Protocol)에서 작동하는
  무선 프로토콜 마크업 언어다. (Wireless Markup Lang.)
  HTML과 마찬가지로 태그를 기반으로 하며 텍스트·이미지·데이터 등을 입력할 수 있다
  좀 더 자세한건 언어의 패러다임을 설명해야 하므로 나도 잘 모른다.

  2. 페이지는 어떻게 만들며 어떻게 보여질 수 있는가?
  일단 이동통신사마다 다르다. 각 통신사별로 지원하는 마크업랭귀지가
  다르기 때문에 발생된다.
  LGT, SKT 는 wml 기반으로 움직이며 KTF는 mHTML 이라는
  역시 모바일하이퍼텍스트마크업랭귀지를 사용한다.
  정리해 보자면.
       LGT => UP-wml
      SKT => SK-wml
       KTF => mHTML

  인 것이다...

  여기서 또 세부적으로 들어가자면 011 즉 SKT 는 Sk_wml 이라고 얘기했는데,
  wml 기본 언어보다 스펙이 약간 달르다고 한다.
  특히 SKT 의 경우 에릭슨계열 Gateway 를 사용하므로 UP 와 약간의 차이가 있다고 한다.
  게다가 각 폰에 탑재된 브라우저가 버젼별로 다르고, 통신사별로 다르다고 하는데,
  이부분은 프로그래밍 부분이 강하기때문에, 프로그래머가 공부해야한다..난 SE다..

  3. 실제 테스트는 어떻게 하는가..

  결국 프로그램이나 스크립트-Side 에서 각 통신사별 요청 프로토콜을 알아내어
  분기문으로 두개종류로 작성된 페이지를 나눠서 보여줘야 하는것이다.
  난 KTF라 mhtml 만 테스트 해봤을 뿐이다. 게다가 마크업랭귀지를 전혀 모른다.
  왜? 웹프로그래머가 아니니까..

  폰을 열고 무선인터넷 혹은 메직엔, 네이트등의 서비스로 접속한 뒤
  "직접 URL 입력" 따위의 것들을 찾아 직접 주소를 쳐주면 된다.
  잘은 모르겠지만 다들 이렇게 테스트해서 제대로 뜨면 된다고 한다.
  m.0114.pe.kr 로 접속해 보라...***pia 라는 타이틀의 로그인 페이지를
  확인 해 볼 수 있을것이다!
  (로그인은 안된다..왜? 로그인 루틴은 안만들었으니까.....)

  3. 후기.
  일단 처음에는 무선인터넷프로토콜에 대한 기반이 잡혀있어야 서버도
  셋팅이 가능한게 아닐까 라는 두려움이 앞섰지만.......별거 아니였다.
  그냥 무선인터넷 프로토콜을 사용한 파일만 인식시켜 주면 되는거였으니까..
  왜? 어차피 웹인거다....아파치가 해석만 할 수 있으면, 그리고 그 해석에 맞춰
  변환시켜 보여주기만 하면 무선이든 아니든 똑같은거다...
  물론 프로그램쪽으로 들어가면 패러다임이라든가, 여러가지 다른점들이 많지만,
  일단 난 S.E 쎄컨드에디션이니까...
   
  또한 정말 간략하게 문서를 작성했는데, 사실 APM 소스컴파일에
  필수적인 서버사이드적 APM 프로그램 소스 튜닝을 뺐다.
  남이 만들어놓은 소스코드를 분석하고 이해하여, 자신이 원하는대로 사용 할 수 있도록
  수정하고 분해하고 재조립 하는 과정은 일반적으로 설명 할 수 없어서 말이다......
  알고싶으면 서버사이드 프로그래머 하든가 SE 해라..
  뇌이버 잡소리검색도 쓸만 하다....

  기타 문의사항은...답글로 다시오.