Flask в работе с Caddy и Waitress url_for для перенаправления на localhost - PullRequest
1 голос
/ 07 марта 2020

У меня есть сервер Flask, работающий на экземпляре Windows EC2.

Мне нужно использовать его по протоколу https , поэтому мои настройки выглядят так:

  • У меня есть сервер Caddy
  • Я использую официантку для запуска моего flask приложения

Вот мой конфиг для Caddy:

example.com:443{
    proxy / 127.0.0.1:8080
    tls me@example.com
}

Все работает нормально, за исключением того, что в моем файле application.py , когда я делаю:

return redirect(url_for('test', filename=filename))

Мой веб-браузер перенаправляет меня:

Тот же результат с _external=True

Но на странице шаблона, например https://example.com/test2 отображается с использованием render_template( "test2.html"), если у меня есть ссылка <a href="{{ url_for('index') }}" /> HTML генерируется хорошо: https://example.com/

На данный момент я жестко запрограммировал свой URL в application.py, но это не тот способ, которым я хотел бы сохранить его ...

1 Ответ

0 голосов
/ 08 марта 2020

Я обновил свой Caddyfile, и теперь он отлично работает!

example.com:443 {
    proxy / 127.0.0.1:8080 { 
        header_upstream Host {host} 
        header_upstream X-Real-IP {remote} 
        header_upstream X-Forwarded-For {remote} 
        websocket 
    }
        tls me@example.com
}

Этот ответ подсказал мне.

Этот ответ помог мне построить Caddyfile.

...