mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
try to use X-Forwarded-Proto to determine https login
Signed-off-by: Kevin Morris <kevr@0cost.org>
This commit is contained in:
parent
2db4809f8d
commit
fc69ef4b57
2 changed files with 4 additions and 2 deletions
|
@ -6,18 +6,20 @@ from fastapi.responses import HTMLResponse, RedirectResponse
|
||||||
|
|
||||||
import aurweb.config
|
import aurweb.config
|
||||||
|
|
||||||
from aurweb import cookies, db
|
from aurweb import cookies, db, logging
|
||||||
from aurweb.auth import requires_auth, requires_guest
|
from aurweb.auth import requires_auth, requires_guest
|
||||||
from aurweb.l10n import get_translator_for_request
|
from aurweb.l10n import get_translator_for_request
|
||||||
from aurweb.models import User
|
from aurweb.models import User
|
||||||
from aurweb.templates import make_variable_context, render_template
|
from aurweb.templates import make_variable_context, render_template
|
||||||
|
|
||||||
|
logger = logging.get_logger(__name__)
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
|
|
||||||
|
|
||||||
async def login_template(request: Request, next: str, errors: list = None):
|
async def login_template(request: Request, next: str, errors: list = None):
|
||||||
""" Provide login-specific template context to render_template. """
|
""" Provide login-specific template context to render_template. """
|
||||||
context = await make_variable_context(request, "Login", next)
|
context = await make_variable_context(request, "Login", next)
|
||||||
|
logger.info(f"Request scheme: '{request.url.scheme}'.")
|
||||||
context["errors"] = errors
|
context["errors"] = errors
|
||||||
context["url_base"] = f"{request.url.scheme}://{request.url.netloc}"
|
context["url_base"] = f"{request.url.scheme}://{request.url.netloc}"
|
||||||
return render_template(request, "login.html", context)
|
return render_template(request, "login.html", context)
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
</p>
|
</p>
|
||||||
</form>
|
</form>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if request.url.scheme == "http" and config.getboolean("options", "disable_http_login") %}
|
{% if request.headers.get("X-Forwarded-Proto", "http") and config.getboolean("options", "disable_http_login") %}
|
||||||
{% set https_login = url_base.replace("http://", "https://") + "/login" %}
|
{% set https_login = url_base.replace("http://", "https://") + "/login" %}
|
||||||
<p>
|
<p>
|
||||||
{{ "HTTP login is disabled. Please %sswitch to HTTPs%s if you want to login."
|
{{ "HTTP login is disabled. Please %sswitch to HTTPs%s if you want to login."
|
||||||
|
|
Loading…
Add table
Reference in a new issue