Flask+Gunicorn+Nginx 应用程序中带有静态文件夹的 nginx 文件配置

问题描述 投票:0回答:2

我有一个 Flask+Gunicorn+Nginx 应用程序,这是 etc/nginx 内站点可用文件的设置。

我的问题是应用程序不加载图像和 css 样式,但 Flask 逻辑主题、路由、登录等可以工作。

问题出在我的静态文件夹上。

这是配置文件:

server {
    listen 443 ssl;
    server_name dominio.com;

    ssl_certificate /etc/letsencrypt/live/dominio.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/dominio.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/suppliers.sock;
    }

    location /static/ {
        root /home/soporte/portal_providers/app_Portal;
        autoindex off;
    }
}

server {
    if ($host = dominio.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name dominio.com;
    return 404; # managed by Certbot
}

存档蓝图烧瓶:

auth = Blueprint('auth', __name__,template_folder='templates', static_folder='static')

在 html 中链接图像:

{% block logo %}
<img src="images/Logo--definitivo.jpg" class="menu-logo py-0 " style="z-index: auto">
{% endblock %}

项目结构 在此输入图片描述

python nginx flask gunicorn
2个回答
0
投票

尝试使用

root
而不是
alias
。我正在开发的应用程序的(工作的、部署的)nginx 配置确实如此

location /static/ {
    root /home/pi/app;
    autoindex off;
}

0
投票

我也有同样的问题。我正在尝试使用 Flask 从我的应用程序上传图像,但 Nginx 中不断出现错误,提示它找不到我想要在静态目录中保存图像的路径和文件夹。您能解释一下您是如何解决这个问题的吗?

提前非常感谢!我已经尽力了,哈哈。

© www.soinside.com 2019 - 2024. All rights reserved.