2013-12-06 4 views
15

На тестовом сервере goapp serv он работает, сам appengine он перезаписывается приложением/октетом-потоком.Не удалось догадаться mimetype

Как я могу сказать appengine, чтобы прекратить это делать?

Could not guess mimetype for home/fonts/FontAwesome.otf. Using application/octet-stream...

Мой конфигурационный файл:

application: test 
version: 0 
runtime: go 
api_version: go1 
threadsafe: true 

handlers: 
- url: /home 
    static_dir: home 

- url: /home/font/(.*\.woff) 
    static_files: home/font/\1 
    upload: home/font/(.*\.woff) 
    http_headers: 
    Content-Type: application/font-woff 

- url: /home/font/(.*\.svg) 
    static_files: home/font/\1 
    upload: home/font/(.*\.svg) 
    http_headers: 
    Content-Type: image/svg+xml 

- url: /home/font/(.*\.eot) 
    static_files: home/font/\1 
    upload: home/font/(.*\.eot) 
    http_headers: 
    Content-Type: application/vnd.ms-fontobject 

- url: /home/font/(.*\.ttf) 
    static_files: home/font/\1 
    upload: home/font/(.*\.ttf) 
    http_headers: 
    Content-Type: application/x-font-ttf 

- url: /home/font/(.*\.otf) 
    static_files: home/font/\1 
    upload: home/font/(.*\.otf) 
    http_headers: 
    Content-Type: application/x-font-otf 

- url: /favicon.ico 
    static_files: home/favicon.ico 
    upload: home/favicon.ico 

- url: /documentation 
    static_dir: documentation 

- url: /.* 
    script: _go_app 

inbound_services: 
- warmup 
+3

Вашего файл находится в '/ дома/fonts' в то время как ваши настройки упомянут только'/Главная/font'. – Palec

+0

Это было также так :) –

ответ

25

Я считаю, что причина, что он работает на местном уровне является то, что система имеет необходимый тип пантомимы, определенный для расширения .otf в /etc/mime.types или эквивалент.

AppEngine, вероятно, этого не имеет. Поэтому вы должны дать ему подсказку о правильном типе MIME. Похоже, вы пытаетесь это сделать, но вы используете «http_headers». Вместо этого попробуйте «mime_type»:

- url: /home/font/(.*\.otf) 
    static_files: home/font/\1 
    upload: home/font/(.*\.otf) 
    mime_type: application/x-font-otf 

Я надеюсь, что это сработает для вас. Документация по адресу:

https://developers.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Static_file_handlers

+0

Я попробовал вышеуказанный метод. Это не работает для меня. Пока я получаю «Не могу угадать mimetype для шрифтов/FontAwesome.otf» –

3

Стоит также отметить, что общее правило должно идти последним, как это:

handlers: 
- url: /static/fonts/(.*\.otf) 
    static_files: static/fonts/\1 
    upload: static/fonts/(.*\.otf) 
    mime_type: application/x-font-otf 

- url: /static/fonts/(.*\.ttf) 
    static_files: static/fonts/\1 
    upload: static/fonts/(.*\.ttf) 
    mime_type: application/x-font-ttf 

- url: /static 
    static_dir: static 
Смежные вопросы