【发布时间】:2012-01-20 18:37:35
【问题描述】:
由于 upload 是一个正则表达式,它匹配上传到静态保管库的文件,因此以下 app.yaml 处理程序应仅适用于 'static/images/jpg' 目录,不应该吗?
- url: /images/(.*?)\.(jpg|png)
static_files: static/images/\2/data.\2
upload: static/images/jpg/(.*)
虽然 'static/images/jpg' 是上传指令的唯一值,但两个请求都从服务器接收文件数据:
wget http://application_url/images/data.jpg
wget http: //application_url/images/data.png
你能描述一下上传指令的正确含义吗?
【问题讨论】:
-
您在标题中说“不会按预期工作”,但实际上并没有告诉我们您遇到了什么问题。您的实际问题是什么?
-
我预计只有application_url/images/data.jpg 给出数据响应,因为我将静态/图像/jpg/(.*) 标记为上传值。但application_url/images/data.png 也可用。我想它不应该,因为 static/images/png/ 不包含在“上传”指令值中。
-
如果其他上传或 static_dir 指令导致文件作为静态文件上传,文件将可用。
-
整个 app.yaml 由三个 url 组成: - url: /images/(.*?)\.(jpg|png) static_files: static/images/\2/data.\2 upload : static/images/jpg/(.*) - url: /favicon.ico static_files: static/favicon.ico 上传: static/favicon.ico - url: /.* script: home.py 没有指向 static/ 的链接images/png 目录作为静态文件。
-
您是在 dev_appserver.py 中看到这种行为,还是在生产中看到这种行为?如果我正确理解您的问题,这绝对是出乎意料的行为。