系统相关
首页 > 系统相关> > python-Django nginx管理媒体

python-Django nginx管理媒体

作者:互联网

我目前正在测试从Apache mod_wsgi迁移到Nginx和FastCGI

我已经准备了整个安装程序,目前正在运行Django 1.1.2的CentOS 5.4机器上对其进行测试.

在旧的Apache配置中,我为/ media /设置了别名,还为/ mediaadmin /设置了别名.

如下所示.

Alias /media/ "/www/django_test1/omu2/media/"
<Directory "/www/django_test1/omu2/media">

Alias /mediaadmin/ "/opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media/"
<Directory "/opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media">

我如何为Nginx配置获得相同类型的设置,目前这里只是我的摘要,即使重新启动Nginx之后,我仍然看不到我的管理方使用正确的CSS,图像等进行解析.

server {
    location /media/ {
        root /www/django_test1/omu2;
    }
    location /mediaadmin/ {
        root /opt/python2.6/lib/python2.6/site-packages/django/contrib/admin;
    }
}

我的settings.py

BASE_PATH = os.path.dirname(os.path.abspath(__file__))
BASE_URL = '127.0.0.1'

MEDIA_ROOT = "%s/media/" % BASE_PATH
MEDIA_URL = "%s/media/" % BASE_URL
ADMIN_MEDIA_PREFIX = "%s/mediaadmin/" % BASE_URL

解决方法:

尝试以下配置:

location /mediaadmin/ {
    alias /opt/python2.6/lib/python2.6/site-packages/django/contrib/admin/media/;
    expires max;
    add_header Cache-Control public;
}

我将路径更改为/ django / contrib / admin / media /,因为我想我们的管理媒体文件正常位于此文件夹中.

提示:您的MEDIA_ROOT和ADMIN_MEDIA_PREFIX的值为absolute.

标签:nginx,django-settings,django-media,python,django
来源: https://codeday.me/bug/20191102/1989509.html