정적 파일 제공


Python 방명록 코드 둘러보기의 이 부분에서는 정적 파일을 제공하는 방법을 보여줍니다. App Engine은 애플리케이션의 소스 디렉터리에서 직접 파일을 제공하도록 구성하지 않는 한 직접 제공하지 않습니다. 하지만 정적 파일을 웹 브라우저에 직접 제공하려는 경우가 많습니다. 이미지, CSS 스타일시트, 자바스크립트 코드, 영화, Flash 애니메이션은 모두 일반적으로 웹 애플리케이션과 함께 저장되고 브라우저에 바로 제공됩니다.

이 페이지는 여러 페이지로 구성된 가이드의 일부입니다. 처음부터 시작하고 설정 안내를 확인하려면 방명록 만들기로 이동하세요.

정적 파일을 사용하도록 앱 구성

방명록 앱의 CSS 파일은 bootstrap/css 디렉터리에 있습니다. 앱의 웹페이지 index.html에 대한 템플릿은 브라우저에 정적 파일인 bootstrap.cssbootstrap-responsive.css를 로드하도록 지시합니다.

<link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap.css">
<link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap-responsive.css">

app.yaml 파일은 bootstrap 디렉터리를 정적 파일의 위치로 지정합니다.

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: /bootstrap
  static_dir: bootstrap

- url: /.*
  script: guestbook.app

handlers 섹션은 URL의 핸들러 두 개를 정의합니다. App Engine이 /bootstrap으로 시작하는 URL의 요청을 받으면 파일에 대한 경로의 나머지 부분을 bootstrap 디렉터리에 매핑하고 적절한 파일이 있으면 파일 콘텐츠가 클라이언트에 반환됩니다. 다른 모든 URL은 /.* 패턴과 일치하며 guestbook 모듈의 app 객체에서 처리됩니다.

URL 경로 패턴은 app.yaml에 표시된 순서대로 테스트됩니다. 이 경우 해당 경로에서 /bootstrap 패턴이 /.* 패턴보다 먼저 일치합니다. app.yaml에서 지정할 수 있는 URL 매핑 및 기타 옵션에 대한 자세한 내용은 app.yaml 참조를 확인하세요.