I repeat this is not an absolute solution or recommended solution for a large-scale web app. It's just for personal project or low traffic web application.
For high traffic web applications, recommended solution use cloud services like amazon s3 bucket etc for serving media file.
OK! I assume that you know about little bit about nginx. If want to know all about nginx configuration let me know in comment.
Go to your nginx domain file configuration -
sudo nano /etc/nginx/sites-available/<your domain file configuration>
location /static/ {
#############
}
location /media/ {
root #path of your project directory where your media folder exist- example: /home/sium/nmedia_backend/nMedia;
}
And then save this file and check is there any error in nginx config file by sudo nginx -t
and then restart nginx service by sudo systemctl restart nginx
Voila! your media file will serve via nginx. Because DEBUG=FALSE
mode means in production mode django won't serve your media file by itself.
Top comments (2)
when i deploy my django app i get this issue how can i solve it please ?
django doesn't take care of your media file when debug mode is turn off i mean False. You have to use 3rd party like CDN service or AWS for large application. But if you have low traffic web or personal app you can use above solution.