如何使用较少的CSS将项目部署到Heroku?

如何使用较少的CSS将项目部署到Heroku?,css,django,deployment,heroku,less,Css,Django,Deployment,Heroku,Less,我在本地开发中使用Django站点的CSS较少。一切看起来都很好。我包括以下文件: <link rel="stylesheet/less" type="text/css" href="{{ STATIC_URL }}less/base.less"> <script src="{{ STATIC_URL }}js/less-1.1.3.min.js" type="text/javascript"></script> 然而,当我将项目部署到Heroku时,更

我在本地开发中使用Django站点的CSS较少。一切看起来都很好。我包括以下文件:

<link rel="stylesheet/less" type="text/css" href="{{ STATIC_URL }}less/base.less">
<script src="{{ STATIC_URL }}js/less-1.1.3.min.js" type="text/javascript"></script>

然而,当我将项目部署到Heroku时,更少的CSS莫名其妙地不起作用。我怎么了

我知道我已经正确设置了静态媒体:我可以从正确的路径下载base.less和less-1.1.3.min.js

注意:我意识到最好是编译和缩小我的.less文件以用于生产,但这只是一个用于开发目的的暂存服务器


注2:如果您知道如何在Heroku部署过程中添加较少CSS的编译,而不必安装node.js,那么除了我的主要问题之外,我还想学习如何进行编译。

问题是Less.js通过XHR加载.Less样式表,除非您设置了相应的访问控制Allow Origin头,否则它将不起作用,而S3不允许这样做(https://forums.aws.amazon.com/thread.jspa?threadID=34281)

作为一种解决方法,一些人建议设置一个HTTP代理,它添加了必要的头。(http://motoole.com/2011/10/19/hosting-font-face-fonts-on-s3.html)及(http://zefer.posterous.com/pure-html-ajax-solutions-to-upload-files-to-s)

否则,您将不得不将.less文件编译为CSS,因为less.js不起作用

当然,另一种选择(我使用)是简单地将静态文件部署到Apache服务器上,而不是将它们托管在S3中


它利用heroku buildpack python提供的
post_compile
hook安装
nodejs
lessc

在heroku中解析的url是什么样子的(打开页面并查看源代码)?你提到的“正确路径”是什么?看起来是这样的。如果我打开任意一个URL,这两个文件都可以正常加载。(为了隐私而更改名称)