无法在Google App Engine中显示图像(Python)

1 投票
5 回答
3271 浏览
提问于 2025-04-15 21:52

我在使用Google App Engine(Python)创建的页面中无法显示图片。

我的app.yaml文件内容是:

- url: /images
  static_dir: images

而我的Python文件内容是:

self.response.out.write("""<img src = '/images/title.gif' />""")  

但是图片在页面上还是不显示。

谢谢

5 个回答

0

你的应用程序的根目录里有一个叫做'images'的文件夹吗?里面有什么东西?如果你直接去找这个文件,会得到什么结果呢?

1

我遇到了类似的问题。解决办法其实很简单。你需要把静态文件的处理程序放在主应用程序处理程序之前,像这样:

处理程序:

  • 网址: /favicon\.ico 静态文件: favicon.ico 上传: favicon\.ico
  • 网址: /photos 静态目录: photos
  • 网址: .* 脚本: main.app

我为这个问题烦恼了大约45分钟,最后在谷歌上找到了答案。

1

我会测试以下几点:

  1. 你能看到这个链接吗:http://yourapp.appspot.com/images/title.gif
  2. 你确定图片文件夹在你的应用根目录下吗?
  3. Title.gif 是一张“正常”的图片吗?

我建议你使用一个静态文件夹,把你的静态内容放在子文件夹里,这样更有条理:

Root  
  static  
     images
     stylesheets
     javascripts
  app.yaml

并且像这样映射一个 /images 的网址。

- url: /images
  static_dir: static/images
  mime_type: image/png 

mime_type: image/png 是可选的;如果不指定,文件的 MIME 类型会根据文件名的后缀自动推断。

撰写回答