我目前有一个Django站点在亚马逊Lightsail上运行,
我运行python manage.py collectstatic
一个有所有的静态文件运行良好,但我有我的媒体文件的问题...我不能上传到我的项目。下面是我的代码
settings.py
DEBUG = False
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
urls.py
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
/opt/bitnami/apache 2/conf/虚拟主机/消息-http-虚拟主机.conf(也为消息-https-虚拟主机.conf编辑)
<IfDefine !IS_MESSAGES_LOADED>
Define IS_MESSAGES_LOADED
WSGIDaemonProcess messages python-home=/opt/bitnami/python python-path=/opt/bitnami/projects/messages
</IfDefine>
<VirtualHost 127.0.0.1:80 _default_:80>
ServerAlias *
WSGIProcessGroup messages
Alias /robots.txt /opt/bitnami/projects/messages/static/robots.txt
Alias /favicon.ico /opt/bitnami/projects/messages/static/favicon.ico
Alias /static/ /opt/bitnami/projects/messages/static/
Alias /media/ /opt/bitnami/projects/messages/media/
<Directory /opt/bitnami/projects/messages/static>
Require all granted
</Directory>
<Directory /opt/bitnami/projects/messages/media>
Require all granted
</Directory>
WSGIScriptAlias / /opt/bitnami/projects/messages/messages/wsgi.py
<Directory /opt/bitnami/projects/messages/messages>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
models.py
message_audio = models.FileField(upload_to='audio/', null=True)
message_image = models.ImageField(upload_to='message-pics/', null=True)
当我尝试上传文件时,我得到“服务器错误(500)”
1条答案
按热度按时间zhte4eai1#
使用绝对路径到媒体目录并确保他们有读和写权限