Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 调试=False时不显示媒体文件;让他们展示的先决条件是什么?_Python_Django_Deployment_Web Deployment_Production Environment - Fatal编程技术网

Python 调试=False时不显示媒体文件;让他们展示的先决条件是什么?

Python 调试=False时不显示媒体文件;让他们展示的先决条件是什么?,python,django,deployment,web-deployment,production-environment,Python,Django,Deployment,Web Deployment,Production Environment,正如我在标题中所述,当我在项目的设置文件中设置DEBUG=False时,我的media目录(用户上载的目录)中的文件不会显示。我的static目录中的文件(CSS和JavaScript文件)正确加载 我看了,但我不明白让它工作的先决条件。我正在我的本地机器上测试这个,在那里我只安装了Django和PostgreSQL。据我所知,我没有任何Apache服务器在运行。我想在AmazonAWS上部署我的应用程序,所以在部署到AmazonAWS之前,我想尝试一下它在生产中的表现 以下是我的setting

正如我在标题中所述,当我在项目的设置文件中设置
DEBUG=False
时,我的
media
目录(用户上载的目录)中的文件不会显示。
我的
static
目录中的文件(CSS和JavaScript文件)正确加载

我看了,但我不明白让它工作的先决条件。我正在我的本地机器上测试这个,在那里我只安装了Django和PostgreSQL。据我所知,我没有任何Apache服务器在运行。我想在AmazonAWS上部署我的应用程序,所以在部署到AmazonAWS之前,我想尝试一下它在生产中的表现

以下是我的
settings.py
文件的相关部分:

DEBUG = False
ALLOWED_HOSTS = ['*']
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR,'media')
MEDIA_URL = '/media/'
STATICFILES_DIRS = [
   BASE_DIR / "static",
   '/var/www/static/',
]

Django在生产中不提供静态/媒体文件。相关:@WillemVanOnsem OK。我有两个问题:1)如何正确加载静态文件?2) 要在生产环境中显示媒体文件,我需要做什么?1)缓存?2) 将web服务器(如apache/nginx)设置为提供文件。Django在生产环境中不提供静态/媒体文件。相关:@WillemVanOnsem OK。我有两个问题:1)如何正确加载静态文件?2) 要在生产环境中显示媒体文件,我需要做什么?1)缓存?2) 设置web服务器(如apache/nginx)以提供文件服务。