【问题标题】:Flask + Gunicorn + NGINX Static files?Flask + Gunicorn + NGINX 静态文件?
【发布时间】:2021-05-12 04:27:25
【问题描述】:

在使用 NGINX 和 Flask 提供静态文件 (CSS + JS) 时遇到一些问题。 当前设置使 Flask 网站在一个容器中运行,而 NGINX 在另一个容器中运行。 静态文件存储在 Flask 应用目录中的/static

如何让 NGINX Container 访问 CSS 和 JS 文件?

Flask Docker 文件: FROM python:3.8-slim

WORKDIR /usr/src/app

RUN pip install pipenv
COPY Pipfile* ./
RUN pipenv lock --requirements > requirements.txt
RUN pip install -r requirements.txt
RUN pip install gunicorn

COPY . .

NGINX Docker 文件: FROM nginx:1.15.8

RUN rm /etc/nginx/nginx.conf
COPY nginx.conf /etc/nginx/
RUN rm /etc/nginx/conf.d/default.conf
COPY project.conf /etc/nginx/conf.d/

NGINX 项目.conf

server {

    listen 80;
    server_name gunicorn_nginx;

    location / {
        proxy_pass http://Website:8000;

        # Do not change this
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location /static {
        rewrite ^/static(.*) /$1 break;
        root /Website/; 
    }
}

我尝试过浏览一些在线教程,但它们似乎没有涵盖这方面的内容。 提前致谢。

编辑:似乎通过删除

location /static {
    rewrite ^/static(.*) /$1 break;
    root /Website/; 
}

从 project.config 文件 Gunicorn 是否能够提供静态文件?

【问题讨论】:

    标签: docker nginx flask nginx-config


    【解决方案1】:

    我也遇到了同样的问题,用别名删除静态位置解决了不加载的问题

    我还是不明白为什么。

    【讨论】:

    • 将查看此内容并回复您。让我看看我能不能解决这个问题。
    • 我已经想通了。我在 nginx 别名中有错字。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    • 2013-06-27
    • 2012-11-20
    • 2017-05-31
    • 2021-08-08
    • 2013-08-12
    相关资源
    最近更新 更多