2011-01-22 3 views
4

내 App Engine 앱에서 엔드 포인트를 설명하려고하는데 정적 컨텐츠와 동적 컨텐츠가 섞여있는 디렉토리 구조에 어려움이 있습니다. 하지만 내 yaml 규칙은 서로 충돌합니다. 디렉토리 구조를 변경하기 전에 누구나 권장 사항이 있습니까?app.yaml 파일의 정적 엔드 포인트와 동적 엔드 포인트 섞기

목표는 문서 (정적 HTML 파일)와 구현을 모두 포함하는 디렉토리를 만드는 것입니다. 나는 내 응용 프로그램의 YAML과 함께 일을해야한다고 생각 무엇

/api 
    - /v1 
    - getitdone.py 
    - doc.html 
    - index.html 

...

- url: /api/v1/getitdone 
    script: api/v1/getitdone.py 

- url: /api/ 
    static_files: api/index.html 
    upload: api/index.html 

- url: /api 
    static_dir: api 

는하지만이 실패 동적 엔드 포인트가 발생합니다. 나는 static_dir 참조가 그것을 깨뜨리고 있다고 가정하고있다. 모든 스크립트 및 정적 파일 참조를 설명하지 않고이 작업을 수행하려면 어떻게해야합니까?

+0

'실패'하는 방법은 무엇입니까? 끝점은 순서대로 평가되므로 나중에 선언하면 이전 선언에 영향을주지 않아야합니다. –

+0

또한이 방법을 사용하고 싶으십니까? '검색'.py 파일은 직접적으로 드문 경우입니다. –

+0

'Fail'은 IOError-IOError에 의해 정의됩니다 : [Errno 13] 파일에 액세스 할 수 없음 : 'C : \\ Greg \\ personal \\ projects \\\\ api/v1/getarrivals.py ...) IOError 만 세 번째 항목에서 statid_dir 구문을 사용할 때 발생합니다. 솔루션은 HTML 파일과 'static_files'/ '업로드'구문에 와일드 카드를 사용한다고 생각합니다. – Greg

답변

1

/api/을 정적 디렉토리로 표시하므로 스크립트가 정적 파일로 업로드되어 App Engine 런타임에 액세스 할 수 없게됩니다.

가장 쉬운 해결책은 동적 코드와 정적 리소스를 앱의 디렉토리 계층 구조의 다른 부분에 넣고 app.yaml을 사용하여 원하는 URL 구조에 매핑하는 것입니다.

+0

"... App Engine 런타임에 액세스 할 수 없습니다." 감사. – Greg

관련 문제