Колба Nginx url_for _external

Как сделать так, чтобы имя сервера заменяло localhost при использовании url_for с _external = True (так: url_for('foobar', _external=True)) под Nginx?

Я использую колбу.

настройка 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;
    }
}

проблема в том, если я печатаю url_for('main.index', _external=True) вместо того, чтобы видеть что-то вроде http://simplemadetutor.com я вижу http://127.0.0.1:8000/

Я попытался установить SERVER_NAME = 'simplemadetutor.com'; однако, это, кажется, помещает simplemadetutor.com перед каждым URL, сгенерированным url_for, вместо тех, у которых external=True.

0 ответов

Другие вопросы по тегам