Django-compressor: La compression hors ligne est activée, mais la clé "cdfe134683bd23a2ea9de19b46490a13" est manquante dans le manifeste hors ligne.

Créé le 9 mai 2014  ·  3Commentaires  ·  Source: django-compressor/django-compressor

Ok, j'ai pensé que je posterais ceci ici avant de perdre d'innombrables heures de ma vie à essayer de réparer quelque chose auquel quelqu'un pourrait avoir une réponse facile. Nous utilisons django-compressor et avons des problèmes lorsque nous définissons COMPRESS_OFFLINE = True. Nous semblons nous tromper ci-dessous au hasard. Parfois, la page se charge et parfois non. Cela fonctionne parfaitement avec COMPRESS_OFFLINE = False.

You have offline compression enabled but key "cdfe134683bd23a2ea9de19b46490a13" is missing from offline manifest.

Voici quelques détails sur notre installation.

Django 1.6.3
django-compresseur 1.3
google-cloud-stockage 0.3
Nginx
Gunicorne

Nous utilisons Google Cloud pour diffuser du contenu statique, y compris le cache pour le compresseur. Voici nos réglages pour le compresseur.

STATIC_URL = 'https://xxxxx.storage.googleapis.com/static/'

COMPRESS_ENABLED = True

COMPRESS_OFFLINE = True
COMPRESS_STORAGE = 'google_folder_storage.google.CacheStorage'
CACHE_GOOGLE_PATH = "cache"
COMPRESS_URL = STATIC_URL
COMPRESS_CSS_FILTERS = [
    'compressor.filters.css_default.CssAbsoluteFilter',
    'compressor.filters.cssmin.CSSMinFilter',
]

Commentaire le plus utile

Cela signifie généralement que vous avez du contenu dynamique dans vos blocs {% compress %} , ou des variables que vous n'avez pas transmises à COMPRESS_OFFLINE_CONTEXT . Aurait besoin d'en voir plus pour déboguer, comme vos modèles, manifeste, etc.

Tous les 3 commentaires

J'ai identifié le problème avec {% compress js inline %} Je suppose que je ne l'utiliserai pas pour l'instant

Cela signifie généralement que vous avez du contenu dynamique dans vos blocs {% compress %} , ou des variables que vous n'avez pas transmises à COMPRESS_OFFLINE_CONTEXT . Aurait besoin d'en voir plus pour déboguer, comme vos modèles, manifeste, etc.

Il y avait quelques problèmes. Le premier était que nous avions notre GS_FILE_OVERWRITE = False qui créait une version différente du manifeste à chaque fois que nous nous y conformions. Par exemple, il créait un manifest_1.json. Nous avons résolu ce problème en créant un compress_settings.py avec GS_FILE_OVERWRITE = True et en exécutant simplement la commande avec ce fichier de paramètres.

Le problème suivant était dû à la présence de variables dans {% compress js inline %}. Je suppose que ce problème peut être clos maintenant.

Cette page vous a été utile?
0 / 5 - 0 notes