压缩机路径问题
所有,
我正在使用django-compressor,它正在为我的开发环境(纯Django)工作,但不是我的生产环境(Apache下的Django,由WebFaction托管)。 这里是相关的细节:
settings.py:
STATIC_ROOT = "/path/to/my/static/files/"
STATIC_URL = '/static/'
COMPRESS_ENABLED = True
COMPRESS_OFFLINE = True
COMPRESS_ROOT = STATIC_ROOT + "my_app_name/"
COMPRESS_PRECOMPILERS = (
('text/less', 'lessc {infile} {outfile}'),
)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'compressor.finders.CompressorFinder',
)
some_template.html:
{% load staticfiles %}
{% load compress %}
<html>
<head>
{% compress css %}
<link rel="stylesheet" type="text/less" media="all" href="{% static 'my_app/less/my_app.less' %}" />
{% endcompress %}
</head>
<body>
<div class="my_class">hello world</div>
</body>
</html>
我运行python manage.py compress && python manage.py collectstatic
以确保上面的“my_app.less”文件被正确编译,压缩和复制。
正如我所说,在我的开发环境中,这工作正常。 服务器调用“//localhost:8000/static/CACHE/css/1d4e9429eac4.css”并在“/path/to/my/static/files/my_app_name/CACHE/css/1d4e9429eac4.css”处返回该文件。
但在制作过程中,相同的URL“//my.domain.com/static/CACHE/css/1d4e9429eac4.css”会返回404 Not Found错误。 该文件位于“/path/to/my/static/files/my_app_name/CACHE/css/1d4e9429eac4.css”本地。
我注意到,如果我手动转到“//my.domain.com/static/my_app_name/CACHE/css/1d4e9429eac4.css”(注意添加“my_app_name”),那么找到该文件。
我的问题是,为什么它在两台服务器上表现不同? 哪一个是正确的行为? 我怎样才能确保压缩在两种情况下都起作用?
谢谢。
链接地址: http://www.djcxy.com/p/71097.html