Django-Compressor не работает с CDN из-за расположения кэша
Я пытаюсь использовать django-compressor в своей системе, но не могу заставить его работать, сжимая файлы локально с удаленного CDN. Как я могу этого добиться?
Я использую Digital Ocean CDN для своих статических файлов, и я хотел бы, чтобы compressor
завершил "сжатие" в цикле запроса, используя простой код, как показано ниже:
{% compress css %}
<link rel="stylesheet" href="{% static 'css/root_variables.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/forms.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/animations.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/animate.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/button.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/datepicker.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/strikeout.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/main.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/scrollbar.css' %}?v={{ version }}"/>
<link rel="stylesheet" href="{% static 'css/navigation.css' %}?v={{ version }}"/>
{% endcompress %}
Проблема в том, что мой STATIC_URL в производстве будет через CDN, и я не могу установить COMPRESS_URL для django-compressor
на локальное место, как я могу это сделать?
Например, мой статический url:
STATIC_URL = f'https://{AWS_DEFAULT_BUCKET}.{AWS_S3_REGION_NAME}.digitaloceanspaces.com/static/'
Когда я пытаюсь добавить эти настройки, он терпит неудачу, потому что он не может записать в мое местоположение CDN (и по крайней мере сейчас я не хочу этого):
COMPRESS_ROOT = '/static/'
COMPRESS_OUTPUT_DIR = '/static/COMPRESSOR/'
Для справки вот url файла, который пытается быть найденным:
https://bucket.digitaloceanspaces.com/static/static/COMPRESSOR/css/output.3e4efcb9ca0a.css