2013-09-10 7 views
0

Недавно я развернул сайт для своего отца с помощью Google App Engine.Google App Engine только развертывание * некоторые * изображения

Как ни странно, некоторые изображения в галерее найдены, в то время как некоторые возвращаются с 404. Я смотрел в панели управления администратора по скорости использования, и он говорит, что я всего лишь на 17% от «Хранилища кода и статического файла».

Я попытался сменить каталог и повторное развертывание, я также создал второе приложение (с этого сайта-1 на этот сайт-2), и я подождал около часа, если это просто кеш , но ни один из них, похоже, не является проблемой.

Я новичок в Google App Engine, это первый веб-сайт, который я развернул с его помощью, поэтому любая помощь будет высоко оценена.

app.yaml

application: this-site-2 
version: 1 
runtime: python 
threadsafe: true 
api_version: 1 

handlers: 
- url: /robots.txt 
    static_files: static/robots.txt 
    upload: static/robots.txt 

- url: /css 
    static_dir: static/css 

- url: /img 
    static_dir: static/img 

- url: /js 
    static_dir: static/js 

- url: /.* 
    script: main.py 

Edit: Я обновил питона 2.7 в случае, если была проблема, но я, делая это:

application: this-site-2 
version: 1 
runtime: python27 
threadsafe: true 
api_version: 1 

handlers: 
- url: /robots.txt 
    static_files: static/robots.txt 
    upload: static/robots.txt 

- url: /css 
    static_dir: static/css 

- url: /img 
    static_dir: static/img 

- url: /js 
    static_dir: static/js 

- url: /.* 
    script: main.app # a WSGI application in the main module's global scope 

libraries: 
- name: webapp2 
    version: "2.5.1" 

- name: django 
    version: "1.2" 

skip_files: 
- ^(.*/)?app\.yaml 
- ^(.*/)?app\.yml 
- ^(.*/)?index\.yaml 
- ^(.*/)?index\.yml 
- ^(.*/)?#.*# 
- ^(.*/)?.*~ 
- ^(.*/)?.*\.py[co] 
- ^(.*/)?.*/RCS/.* 
- ^(.*/)?\..* 
- ^(.*/)?.*\.bak$ 
- ^(.*/)?.*\.less$ 

Тогда я разворачивал, и консоль сообщила, что развертывание было успешным, и оно обновляло индексы и выходило с кодом 0. Затем я попытался перейти на сайт, и он вернулся с 500 server error. Поэтому я отказался от python 2.5, и сайт был прекрасен.

+0

Не могли бы вы отобразить соответствующие части вашего app.yaml и html? – Harrison

+0

Обновлено. HTML-код, который вы можете просмотреть через источник просмотра, но влияет на несколько страниц (а не только на галерею), например, на странице «Продукт» также отсутствуют изображения. Я использую basic 'img src: ...', и для некоторых страниц я использую '../ путь/img.png', потому что они являются подстраницами. –

+0

Дайте несколько примеров файлов, которые работают, и файлы, которые не работают.Возможно, ваше регулярное выражение не совсем соответствует именам некоторых файлов. Мое первое предположение состоит в том, что некоторые файлы могут иметь расширения файлов заглавные. – dragonx

ответ

0

Ах, мой папа решил это;

Просто измените jpg изображения, которые не работают на png изображения (и наоборот, если это png изображение не работает, преобразовать его в jpg)

3

Я думаю, что ваш графический обработчик URL-адресов сложнее, чем нужно. Я хотел бы предложить:

  1. Положите все статический контент (изображения, JavaScript, CSS) в папке static или аналогичные с подпапки для изображений, JavaScript и CSS.
  2. Используйте следующий обработчик вместо текущего обработчика изображений:

    handlers: 
    - url: /images 
        static_dir: static/images 
    

Все файлы в папке static/images будет доступен на URL yourwebsite.com/images/subpath/image.jpg.

Подробнее см. this app.yaml.

+0

Хм. Я попробовал, и у него все тот же результат. Я обновил файл 'app.yaml' до вышеизложенного. –

+0

Что странно, я знаю, что он обрабатывает его прямо в 'app.yaml', потому что все таблицы стилей, сценарии и _some_-изображения найдены, а _some_ image нет. Это похоже на придирчивость, какие ему нравятся, а какие нет ... –

+1

Хорошо, это странная проблема. Хорошо, что вы проверили сами изображения и [решили вашу проблему] (http://stackoverflow.com/a/18730580/2021517). – dlebech

1

Я имел эту проблему, и оказалось, что он развертывает изображения с нижестоящими файловыми расширениями следующим образом: name.png, но не те, у которых есть расширения основного файла, такие как: name.PNG. Полезно, Windows скрывает это от вас, поэтому вы не всегда можете сказать.

Смежные вопросы