Django项目添加ALLOWED_HOSTS后静态CSS样式不生效问题求助
Django静态CSS不生效的解决办法
问题根源
你在settings.py的ALLOWED_HOSTS里配置了带端口的localhost:8000,这不符合Django的配置规则——ALLOWED_HOSTS只需要填写主机名或IP地址,不能带端口号。错误的配置会导致静态文件请求被服务器拦截,进而CSS样式无法加载生效。
修复步骤
修正ALLOWED_HOSTS配置
打开settings.py,把带端口的项改成纯主机名/IP:ALLOWED_HOSTS = ["localhost", "127.0.0.1"]开发环境下也可以简化成
ALLOWED_HOSTS = [](Django默认允许localhost和127.0.0.1访问),或者临时用ALLOWED_HOSTS = ["*"](注意:生产环境绝对不能这么用,存在安全风险)。确认静态文件基础配置
检查settings.py里以下核心配置是否正确:INSTALLED_APPS中包含django.contrib.staticfilesSTATIC_URL = '/static/'(这是默认配置,一般无需修改)- 你的CSS文件路径
blog/static/css/styles.css与模板里的{% static 'css/styles.css' %}引用匹配,无需调整。
重启服务器验证
关闭当前的runserver进程,重新启动开发服务器,刷新页面后即可看到CSS样式正常生效。
内容的提问来源于stack exchange,提问作者Aram Madoyan
相关产品推荐
相关产品推荐

