我有预计是命名为投资组合,这是我的主页。我在这个项目上创建了一个名为体验的应用程序。
在开发服务器上,我可以为两者提供静态文件。但在生产,我只能为主页(项目),而不是应用程序. 404 Not Found错误
我做了收藏品。
我在每个应用程序(和项目)上都有一个静态目录。
我使用Apache和wsgi模块。
我在设置文件上有这个conf:
STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR / 'staticfiles'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "Portfolio/static")
]
拱门下面:
src/
|-- Experiences
| |-- __pycache__
| |-- migrations
| | `-- __pycache__
| |-- static
| | `-- Experiences
| | |-- assets
| | | |-- fonts
| | | `-- img
| | `-- css
| `-- templates
| `-- Experiences
|-- Portfolio
| |-- __pycache__
| |-- static
| | `-- Portfolio
| | |-- assets
| | | |-- fonts
| | | `-- img
| | `-- css
| `-- templates
| `-- Portfolio
`-- staticfiles
|-- Experiences
| |-- assets
| | |-- fonts
| | `-- img
| `-- css
|-- Portfolio
| |-- assets
| | |-- fonts
| | `-- img
| `-- css
`-- admin
2条答案
按热度按时间oalqel3c1#
这是意料之中的,在开发阶段Django提供静态文件,但在生产阶段(当debug为false时)不会,因为这会导致性能问题。
您可以查看官方文档了解如何在Django Docs中配置静态文件
如果你想要一个更简单的解决方案,你可以给予尝试whitenoise
shyt4zoc2#
我已经改变了应用程序静态文件的位置。我把所有的静态文件放在同一个目录下。
我不确定这是最好的方法,但它的作品的时刻。