Google App Engine python无法上传某些静态文件

时间:2014-04-30 08:08:08

标签: google-app-engine

我刚刚注意到,当我将应用程序从本地计算机部署到GAE时,某些.jpg和.js无法上传。我之前没有看过这些文件的问题,但我昨天突然发现了这个变化。运行GAE 1.9.3 w / Python 2.7

对于.jpg文件,来自照片的照片无法上传。

我不知道为什么突然我无法上传,因此显示我的webapp的某些关键静态文件。

观察:
1-Localhost没有问题显示图像或运行.js
2周内2-yaml根本没有改变 3-Deployment工作正常,直到上周。我尝试上传以前无问题的旧代码现在有同样的问题 4 - 我在上传脚本中看到很多Could not guess mimetype for ......错误 5 - 默认情况下,我使用Eclipse和PyDev + GAE + EGIT。但我尝试使用GAELauncher,结果相同 6 - 仅基于照片的图像无法上传;我觉得插图很好。在服务网站上,我得到:GET http://mysite.appspot.com/img/home-concept-item-1.jpg 404 (NOT FOUND)错误。再一次,只有少数人不会通过(准确地说是六个)和两个.js;其他人都很好......
7 - 从上面来看,很难相信我引起了这个问题,但有些事情需要改变。

这是我的yaml(再次,几周没有改变,之前工作正常):

application: myapp
version: 1
runtime: python27
api_version: 1
threadsafe: yes    

handlers:
- url: /img/favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico
- url: /css
  static_dir: css
- url: /js
  static_dir: js
- url: /vendor
  static_dir: vendor
- url: /img
  static_dir: img

- url: .*
  script: main.app

libraries:                                                                      
- name: jinja2                                                                  
  version: latest                                                               
- name: markupsafe                                                              
  version: latest           
- name: webapp2
  version: "2.5.2"

请指教。非常感谢您的意见!

3 个答案:

答案 0 :(得分:1)

此外,如果在app.yaml中有任何静态文件重新映射,则Push-to-Deploy中存在一个错误,其中静态文件会丢失。你在使用git repo和ptd吗?如果是这样,请尝试从命令行或GAELauncher部署。

转储您的缓存,检查app.yaml中的skip_files

答案 1 :(得分:0)

检查skip_files:文件的app.yaml选项。确保你没有像(*.j*)那样过于贪婪的表达。

答案 2 :(得分:0)

添加上传到app.yaml,因为你需要点* .js可以是正则表达式,但你需要检查它。

请参阅代码以获取语法示例:

- url: /img/favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

请参阅我的代码:

- url: /static/audio/(.*\.ogg)
  mime_type: application/ogg
  static_files: static/audio/\1
  upload: static/audio/(.*\.ogg)