Google App Engine 간단한 Howo to 프로그래밍

우선 http://appengine.google.com/ 에 가서 계정 신청을 합니다. 이미 구글 계정이 있는 경우엔 인증만 받으면 되는데, 이 인증이 문제입니다. 기본적으로 휴대폰 문자 메시지를 통한 인증만 가능한데 국내 이통사는 목록에 없어서 불가합니다.

해외에 친구가 있는 경우 그 쪽을 통해 인증을 받는다는 말도 듣긴 했습니다. 저의 경우 구글에 메일을 보내서 인터넷 강국 한국을 뺀 것은 이해가 안 된다는 식으로 말했더니 이번에 인증이 되었네요.

일단 시스템에 파이썬이 설치돼 있어야 합니다. 저의 경우 2.5버전이 이미 설치돼 있어서 Google App Engine용 SDK만 다운 받았습니다. 윈도우용 설치 파일도 있어서 원 클릭으로 잘 설치가 됩니다.

우선 아무 폴더에서나 원하는 폴더를 만듭니다. 고전적인 헬로우 월드 프로젝트를 예를 들면

c:\> mkdir hello

hello.py란 파이썬 소스 파일을 hello\ 안에 작성합니다.

print "Content-type: text/html\n\n"    
print '<html><head><meta http-equiv="Content-Type" content="text/html; charset=euc-kr" /></head><body>'
print "안녕하세요?<br/>"
print '<a href="hello.py"><src="hello.gif" title="홈페이지" /></a>'
print '</body></html>'

파이썬 소스 파일 외에 꼭 필요한 파일이 하나 더 있으니 설정용 파일 app.yaml이 역시 같은 디렉토리 내에 있어야 합니다.

application: hello # 이 부분은 어플리케이션마다 달라지겠죠
version: 1
runtime: python    # 현재는 선택의 여지 없이 파이썬. 향후 더 많은 언어를 지원할 거라네요.
api_version: 1

handlers:
- url: /          # 루트 역할을 지정
  script: hello.py

- url: /hello\.py # 일종의 정규식 문장인데 .를 \.로 표현. 사용할 소스 파일을 지정
  script: hello.py

- url: /world\.py # 역시 다른 파일도 지정 - 한꺼번에 지정하는 편리한 방법이 있을 듯한데...
  script: world.py

- url: /images    # 이미지 디렉토리가 별도로 필요하다면...
  static_dir: static/images
 
- url: /(.*\.(gif|png|jpg)) # 그림 파일과 같은 정적인 파일들의 저장 위치와 업로드 위치
  static_files: static/\1
  upload: static/(.*\.(gif|png|jpg))

이와 같이 설정했다면 hello.py에서 필요로 하는 hello.gif는 hello\static\ 에 위치해야 합니다.


이제 테스트!

c:\> dev_appserver.py hello

dev_appserver.py가 위치한 폴더가 실행 패스에 잡혀 있다면 위와 같이 하면 됩니다. 그렇지 않은 경우 python dev_appserver.py hello 이런 식으로 명령을 줘야겠죠.

웹 브라우저에서 http://localhost:8080/을 열면 원하는 결과가 나와야 합니다.

이제 업로드에 앞서 http://appengine.google.com/에서 업로드할 어플리케이션 항목을 만들어줘야 합니다. 식별어는 여기선 hello로 통일해야 합니다.

이제 업로드!
 
c:\> appcfg.py update hello --noisy

--nosiy 옵션을 켜면 업로드 과정이 아주 세밀히 나와서 무엇이 문제인지 바로 알 수 있습니다. 일단 한글 이름 파일은 업로드가 안됩니다.

더 자세한 내용을 구글 검색으로...!

제가 만든 어플리케이션 홈페이지는 http://catch-english.appspot.com/ 입니다.





덧글

  • ironysd 2009/01/21 17:33 # 삭제 답글

    포스팅 날짜를 보니 이미 알고 계실지도 모르겠네요^^
    우리나라도 문자메시지로 인증 받을수 있습니다.
    자신의 핸드폰 번호가 010-1234-5678이라면
    번호 적는 란에 821012345678 이라고 적으면 바로 메시지 옵니다.
    알고 계셨다면 죄송합니다.~
  • 뽀도르 2009/01/21 17:36 #

    앗 감사합니다. 이제 되는군요. 저는 구글에 메일 보내서 간청을 했더랍니다.
  • 익명 2011/12/09 12:33 # 삭제 답글

    만드신 사이트 보고 글을 남김니다.
    한글 검색부분을 너무 인상깊게 봤는데
    어떻게 코드 짜셧나 알려주실수 있으신가요?ㅜㅜ
  • 뽀도르 2011/12/09 13:32 #

    http://mytears.org/resources/doc/Hangul/HANGUL.TXT 이런 것을 참조하면 도움이 되지 싶습니다. 저는 조금 다르게 파이썬으로 좀 지저분하게 코딩한 거 같습니다 ㅋㅋ
  • 익명 2011/12/11 16:55 # 삭제 답글

    오.. 감사합니다
댓글 입력 영역