【问题标题】:How to serve Static and Media files in Azure blob with gunicorn and nginx如何使用 gunicorn 和 nginx 在 Azure blob 中提供静态和媒体文件
【发布时间】:2019-05-06 10:15:50
【问题描述】:

我正在尝试将我的资产上传到 Azure blob,在我的本地它正在工作。 collectstatic 仅将静态文件保存在 Azure blob 中。但是当我通过 gunicorn 运行时,它会保存在我的本地。我没有在 nginx 中为静态和媒体添加任何配置。

nginx 配置:

server {
    listen 8000;
    server_name x.x.x.x:8000;


    location / {
        include proxy_params;
        proxy_read_timeout 300s;
        proxy_connect_timeout 300s;
        proxy_pass http://unix/home/myproject/project.sock;
    }
}

【问题讨论】:

  • 你也在本地通过 gunicorn 运行??
  • NGINX 只负责提供您的文件。与保存无关。如果它没有保存在正确的位置,那么问题出在您的配置或设置中
  • 在 Nginx 中只有这种配置会去location /static { root /home/<username>/<project>/static; } 和媒体相同。 staticmedia 文件就是这样
  • @xxbinxx 不,我没有在本地使用 gunicorn。当我使用 python 运行时,保存和检索工作正常,它保存在 azure blob 中。但是对于gunicorn,只会出现这个问题。当我将资产保存在本地时,我使用了该位置配置。

标签: django nginx django-rest-framework gunicorn azure-blob-storage


【解决方案1】:

据我所知,对于模块ngx_http_proxy_moduleproxy_pass指令,可以指定两种类型的URL路径,一个域名或者IP地址的url路径,或者一个UNIX域的socket路径,如下.

我看到您使用的是 UNIX 域套接字路径,但它似乎不正确。请参考proxy_pass指令的相关文档,尝试更正它并使其正常工作。

【讨论】:

  • proxy_pass 工作正常,应用服务器没有问题。你能读懂我的问题吗?问题在于 nginx+azure blob 提供静态和媒体文件。
猜你喜欢
  • 2023-03-05
  • 2019-02-13
  • 2020-09-18
  • 2013-06-27
  • 2018-11-07
  • 2021-07-18
  • 1970-01-01
  • 2017-09-17
  • 2015-11-30
相关资源
最近更新 更多