小编dlb*_*dlb的帖子

Flask Nginx url_for _external

在 Nginx 下使用url_forwith _external = True(so :) 时,如何使服务器名称替换本地主机url_for('foobar', _external=True)

我正在运行一个烧瓶应用程序。

nginx设置

server {
    listen 80;
    server_name _;
    access_log /var/log/nginx/simplemadetutor.access.log;
    error_log /var/log/nginx/simplemadetutor.error.log;
    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_redirect off;
        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 {
        alias /home/implemad/www/simplemadetutor/app/static;
    }
    location /favicon.ico {
        alias /home/implemad/www/simplemadetutor/app/static/img/favicon.ico;
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是如果我打字url_for('main.index', _external=True)而不是看到http://simplemadetutor.com我 看到的东西http://127.0.0.1:8000/

我试过设置 SERVER_NAME = 'simplemadetutor.com'; 然而,这似乎将 simplemadetutor.com 放在由 url_for 扩展生成的每个 URL 前面,而不仅仅是那些具有 external=True 的 URL。

python nginx url-for flask

5
推荐指数
0
解决办法
676
查看次数

标签 统计

flask ×1

nginx ×1

python ×1

url-for ×1