【发布时间】:2011-07-18 00:08:50
【问题描述】:
以下 app.yaml 在我的本地开发服务器上运行良好。但是当我将它部署到生产环境时,所有静态文件都会抛出 404。服务器无法找到任何静态文件。已经搜索了几个小时找不到有效的解决方案。
注意:我是用mac开发的,所以要注意系统的大小写敏感。
application: dev-scanner
version: 1
runtime: python
api_version: 1
handlers:
- url: /(.+)
static_files: static_files/\1
upload: ./static_files/(.+)
- url: /
static_files: static_files/index.html
upload: ./static_files/index.html
这是日志中的错误
2011-03-18 01:18:07.033 / 404 21ms 0cpu_ms 0kb Mozilla/5.0 (Macintosh; U; 英特尔 Mac OS X 10_6_6;英美) AppleWebKit/534.16(KHTML,像 Gecko) 铬/10.0.648.134 Safari/534.16,gzip(gfe),gzip(gfe),gzip(gfe) 76.126.174.202 - - [18/Mar/2011:01:18:07 -0700] “获取 / HTTP/1.1" 404 0 - "Mozilla/5.0 (麦金塔;U;英特尔 Mac OS X 10_6_6; zh-CN)AppleWebKit/534.16(KHTML,如 壁虎)铬/10.0.648.134 Safari/534.16,gzip(gfe),gzip(gfe),gzip(gfe)" “dev.app-scanner.com” ms=21 cpu_ms=0 api_cpu_ms=0 cpm_usd=0.000053 W 2011-03-18 01:18:07.012 静态文件 未找到处理程序引用: static_files/index.html
这是我使用appcfg.py download_app -A后的文件系统结构
【问题讨论】:
-
如果将 yaml 上的
static_files更改为static_dir会发生什么? -
./是多余的。我不确定它是否会导致您的问题,但我会尝试将其删除。 -
我有点晚了,但我想指出,我在使用不同的解决方案时遇到了同样的问题。对于未来的读者:仔细检查以确保您的包含和文件名完全匹配(包括大小写)。我在 Windows 上开发(抱歉)并认为
image.PNG会被识别为与image.png相同,但 GAE 的环境区分了两者。
标签: python google-app-engine http-status-code-404