2012-05-12 6 views
2

웹 응용 프로그램 개발을 배우려고합니다. 현재 Google App Engine을 사용하여 앱을 만들고 있습니다. 내 사이트에 이미지를 보여주기 위해 실험하고 있었지만 사이트는 대체 텍스트를 보여줍니다.Google App Engine, 이미지 업로드

정적 파일에 대해 처음 알았습니다. 이 문제를 해결하면 이미지 요청 줄이 나타납니다. '/images/pic.jpg HTTP/1.1 "200 -'. dev_appserver를 실행했을 때 이미지 처리를 위해 파이썬 모듈 "PIL"이 필요하다는 경고가 나타났습니다. 일단 다운로드하고 설치하면 경고가 사라졌지만 여전히 사진을로드하지 않습니다! 요청 줄에 여전히 이미지가 있음이 표시됩니다. 그러나 모든 사이트 디스플레이는 대체 텍스트입니다!

어쨌든, 여기에 애플리케이션 제목 및 스크립트 코드입니다 : (참고 : 나는 파이썬 2.5의 코드를 사용하고 있습니다)

----------- app.yaml- -----------

application: mysite 
version: 1 
runtime: python 
api_version: 1 

handlers: 
- url: /.* 
    script: myscript.py 

- url: /images 
    static_dir: images 

---------- 스크립트 -----------

template = """ 
     <body> 
       <br> 
       <br> 
       <img src="/images/pic.jpg" alt="Clone Pic" width="100", height="70"/><br> 
     </body> 
""" 
print "Content-Type: text/html" 
print template 

내 응용 프로그램 디렉토리는 다음과 같습니다. 같은 KS :

Root 

    app.yaml 

    script.py 

    images 

     pic.jpg 

나는 최근에 내 스크립트에서 이미지 디렉토리의 이름을 변경하는 경우에도

<img src="/foo/pic.jpg...) 

요청 라인은 여전히 ​​OK

"GET /foo/pic.jpg HTTP/1.1" 200 - 

누구를 말한다 발견 무슨 일인지 알아?

답변

4

처리기 순서가 중요합니다. /.*는 모든 URI와 일치하므로 대개 마지막에이를 원합니다.

handlers: 
- url: /images 
    static_dir: images 

- url: /.* 
    script: myscript.py 

는 또한, 당신은 static_dir에 지정된 이미지 파일이 디렉토리에 이미지 아래에 있는지 확인 ... 다음을 시도하십시오.

희망이 도움이됩니다.

+1

고맙습니다! 문제가 해결되었습니다! – Harrison