无法在服务器上提供Django媒体文件?

时间:2019-02-27 11:02:17

标签: python django media

我正在使用Django版本-2.0.6。 并在Google计算引擎VM实例上运行服务器。

我的apache文件未配置为以不同方式为生产基础服务器和本地设置服务器。 当前,这些设置是从base.py和local.py运行的。

我已经这样配置了我的媒体和静态文件:

我的设置模块(base.py和local.py):

STATIC_URL = '/static/'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
]

STATIC_ROOT = os.path.join(os.path.dirname(os.path.dirname(BASE_DIR)), "static-root")



MEDIA_URL = '/media/'

MEDIA_DIR = os.path.join(BASE_DIR,'media')

MEDIA_ROOT = os.path.join(os.path.dirname(os.path.dirname(BASE_DIR)), "media-root")

我的urls.py:

urlpatterns = [
....
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

当我尝试上传任何媒体文件时,它不会保存在“ MEDIA_ROOT”位置,而是会保存在“ MEDIA_DIR”中。

如何在生产环境中提供media_root和media_dir?(/ var / www / venv)

静态文件可以正常工作。

层次结构

/var/www/ ----->media-root
               >static-root
               >venv--->src--->manage.py
                              >media
                              >static
                              >other apps & settings

0 个答案:

没有答案