首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS在Django中没有显示NGINX和uWSGI

CSS在Django中没有显示NGINX和uWSGI
EN

Stack Overflow用户
提问于 2022-06-13 02:35:55
回答 2查看 213关注 0票数 0

这是我的第一个真正的Django项目,我正在尝试使用NGINX和uWSGI为生产配置它。它运行在一个数字海洋Ubuntu服务器上。除了提供静态CSS文件之外,一切都是设置和工作的。奇怪的是,它提供的静态图像和JavaScript文件都很好,唯一没有服务的就是CSS。

这是我的NGINX站点配置文件(“nebula”是Ubuntu用户和Django项目的名称):

代码语言:javascript
复制
# configuration of the server
server {
    server_name example.com www.example.com;
    charset     utf-8;
    # max upload size
    client_max_body_size 75M;
    # Django media and static files
    location /media  {
        alias /home/nebula/nebula/media;
    }
    location /assets {
        alias /home/nebula/nebula/assets;
    }
    # Send all non-media requests to the Django server.
    location / {
        uwsgi_pass  django;
        include     /home/nebula/nebula/uwsgi_params;
    }
}

这就是我的Settings.py文件的样子:

代码语言:javascript
复制
BASE_DIR = Path(__file__).resolve().parent.parent

STATIC_URL = '/assets/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
STATIC_ROOT = os.path.join(BASE_DIR, "assets/")

STATICFILES_DIRS = ( os.path.join(BASE_DIR,'assets/'),)

这就是我的基本目录的样子(资产和静态是一样的,我复制它是为了解决这个问题):

代码语言:javascript
复制
assets      demo.py    media   nebula.sock       static  uwsgi_params
db.sqlite3  manage.py  nebula  nebula_uwsgi.ini  set     store

这是在“资产/”内部:

代码语言:javascript
复制
admin  css  images  jazzmin  js  vendor
EN

回答 2

Stack Overflow用户

发布于 2022-06-13 02:40:03

nginx配置中静态文件的位置路径应该与STATIC_URL设置匹配。

代码语言:javascript
复制
    location /assets {
        alias /home/nebula/nebula/assets;
    }
票数 0
EN

Stack Overflow用户

发布于 2022-06-13 03:45:32

好像这里有个问题

你能试着换衣服吗?

代码语言:javascript
复制
STATICFILES_DIRS = ( os.path.join(BASE_DIR,'media/'),)

代码语言:javascript
复制
STATICFILES_DIRS = ( os.path.join(BASE_DIR,'assets/'),)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72597283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档