我正在部署一个Django应用程序到Stackato。除了静态文件,一切都很好。根据文档,下面是我在.yml文件中的设置:
processes:
web: $STACKATO_UWSGI --static-map /static=$HOME/static这里是我的本地setting.py:
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(PROJECT_PATH, "static"),
'/var/www/static/',
)另外,这是我的项目结构。
Project -- .....
|
static -- css
|
-- images我没有从日志中看到任何错误。有什么想法吗?
发布于 2015-04-08 16:55:40
我刚想明白了:
1.当settings.DEBUG设置为True时,静态url模式必须包括在内:
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
if settings.DEBUG:
urlpatterns += staticfiles_urlpatterns()2.静态档案应遵循这一结构:
Project -- <app 'Project'> -- settings.py
| |
| -- urls.py
| |
| -- wsgi.py
|
-- <app 'somename'> -- ..
|
-- static -- <app 'somename'> -- css - a.css
|
-- images - a.jpg3.STATIC_ROOT不应该是静态目录的实际位置,它可以是:Project/Project/static,而STATICFILES_DIRS必须是实际的静态文件目录,即Project/somename app/static。
发布于 2015-04-02 17:10:34
您的配置应该可以工作。具体来说,静态/css和静态/图像目录中的资产可以通过http://your-stackato-host/static/css/yourstyle.css这样的urls获得。
为了帮助解决这个问题,我创建了一个赤裸的github示例,您可以克隆它并推到Stackato来验证它是否工作。
https://stackoverflow.com/questions/29402300
复制相似问题