我有两台服务器:第一台用于Nginx,第二台用于Django +媒体文件。
Nginx server IP: xxx.xx.xx.1
Django + media files server IP: xxx.xx.xx.2
在Django的settings.py
文件中,我的媒体路径配置:
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = "/media/"
在第一台服务器中,我的Nginx配置:
server {
listen 80;
server_name example.com;
location /media/ {
proxy_pass http://xxx.xx.xx.2/;
}
location / {
include proxy_params;
proxy_pass http://xxx.xx.xx.2:8000/;
}
}
在第二台服务器中,放置媒体文件的是我的Nginx配置:
server {
listen 80;
server_name xxx.xx.xx.2;
location /media/ {
alias /home/sadm/Desktop/{project_name}/media;
}
但是,当尝试访问example.com/media/images/my_image.jpg
时,出现404
错误。
任何帮助将不胜感激!预先感谢!
答案 0 :(得分:1)
这可能是一分钟,但我认为您的别名末尾不应该有/media
。
试试这个:
server {
listen 80;
server_name xxx.xx.xx.2;
location /media/ {
root /home/sadm/Desktop/{project_name};
}
}