1
我想在开发(DEBUG=True
)模式下在Django中提供静态文件。我有这样的目录结构:在Django上没有提供静态文件
my_project/
...
static/
img.png
在我settings.py
我有这样的:
STATIC_ROOT = os.path.join(BASE_DIR, "static")
STATICFILE_DIRS = [
os.path.join(BASE_DIR, "static"),
]
STATIC_URL = '/static/'
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# 'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
和my_project/urls.py
我有这样的:
from django.conf import settings
from django.conf.urls import include, url
from django.conf.urls.static import static
from django.contrib import admin
urlpatterns = [
# ...
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('app.landing.urls')),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
这一切都似乎是正确的。当我访问http://127.0.0.1:8000/static/img.png虽然,我得到了一个404.
我做错了什么?
从文档:在开发过程中,如果使用django.contrib.staticfiles,这将是自动的runserver完成时DEBUG设置为True(请参阅django.contrib.staticfiles.views.serve())。 –
这是一个宁静的建筑吗?我的意思是如果你有一个单独的前端应用程序运行在另一个端口? – AceLearn
你用过nginx吗? – Windsooon