gpt4 book ai didi

django - Digital Ocean、Django 和 Nginx 找不到所有静态文件

转载 作者:太空宇宙 更新时间:2023-11-03 17:06:52 24 4
gpt4 key购买 nike

我尝试了很多不同的方法,但我找到的所有解决方案都没有帮助。

我按照 digitalocean directions 将我的公司网站放在 ubuntu 16.04 上的 digitalocean 网站上(以前运行良好)但它只提供一些静态文件。

这里是图片的链接。

<h3>Here is the image that doesn't load</h3>

<img src="http://206.189.161.104/static/images/frac_stack_1.jpg" alt="Image that doesn't load">

<h3>Here is the image that does load in the same folder</h3>

<img src="http://206.189.161.104/static/images/coil_pic.jpg" alt="Image that doesn't load" style="width:200px;height:200px;>

这是我的 nginx 配置:

server {
listen 80;
server_name 206.189.161.104;

location = /favicon.ico { access_log off; log_not_found off; }
location /static {
root /home/dmckim/myproject;
}

location / {
include proxy_params;
proxy_pass http://unix:/home/dmckim/myproject/myproject.sock;
}
}

我尝试删除静态的尾部斜杠(如上所示)。我还尝试将 root 更改为别名并将静态文件夹添加到路径,但我得到了相同的结果。

这是我的 settings.py 文件中的代码:

STATIC_URL = '/static/'

STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
'/home/dmckim/myproject/static/',
'/home/dmckim/myproject/static/images/',
)

我还尝试在再次收集静态之前清除 collectstatic,之后我总是运行这些命令并确保我的浏览器缓存已清除。

sudo systemctl restart gunicorn
sudo nginx -t && sudo systemctl restart nginx

我对文件的权限是 -rw-rw-r--,对于加载的图像和不加载的图像。我也尝试了很多更改权限的方法(我不太了解它们,但在其他帖子中建议了它们)。我什至破坏了服务器并从头开始,以确保我没有弄乱任何权限。

我没有看到 nginx 进程日志或访问日志有任何问题,但错误日志显示如下:

2018/05/31 13:04:19 [error] 11481#11481: *22 open() 
"/home/dmckim/myproject/static/images/frac_stack_1.jpg" failed (2: No such
file or directory), client: 12.184.4.50, server: 206.189.161.104, request:
"GET /static/images/frac_stack_1.jpg HTTP/1.1", host: "206.189.161.104",
referrer: "http://206.189.161.104/frac-stacks/"

对于无法加载的图像,gunicorn 日志显示 404。

这里是 www-data 组 uid=33(www-data) gid=33(www-data) groups=33(www-data)

这是我的组 uid=1000(dmckim) gid=1000(dmckim) groups=1000(dmckim),27(sudo)

最佳答案

文件名区分大小写。您的图片名为“http://206.189.161.104/static/images/frac_stack_1.JPG”而不是“http://206.189.161.104/static/images/frac_stack_1.jpg”。

<h3>Here is the image that loads</h3>

<img src="http://206.189.161.104/static/images/frac_stack_1.JPG" alt="Image that doesn't load" style="width:200px;height:200px;">

<h3>Here is the other image that does load in the same folder</h3>

<img src="http://206.189.161.104/static/images/coil_pic.jpg" alt="Image that doesn't load" style="width:200px;height:200px;>

请注意,在本地运行时您的结果可能会有所不同。 Windows 不区分大小写,Linux 是。参见 this question for details

关于django - Digital Ocean、Django 和 Nginx 找不到所有静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50626210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com