首页 > 解决方案 > 带有 get_full_url 的 Wagtail 正在重定向到非 SSL 链接

问题描述

我正在使用 get_full_url 获取我的 wagtail 应用程序中的页面链接,但它从 HTTPs 重定向到 HTTP,当我在模板中将其更改为 get_url 或 pageurl 时,它解决了问题并且所有链接都被重定向到 HTTPs (SSL) 唯一的问题我遇到的问题是在页脚中,因为它是通过电子邮件发送的,每次我使用 pageurl 发送带有页脚的电子邮件时,它都会创建一个服务器错误,这是我得到的错误:

    raise ValueError("pageurl tag expected a Page object, got %r" % page)

Exception Type: ValueError at /mission/accept_plan/
Exception Value: pageurl tag expected a Page object, got ''

get_full_url 不会发生这种情况

这里是模板中的代码:

<a href="{% pageurl LIBRARY %}" referrerpolicy="origin">

库在上下文中被定义为 this

library = (
        Site.find_for_request(request)
        .root_page.get_children()
        .type(LibraryPage)
        .first()
    )

return {
        "LIBRARY": library,
        }

当我更改为这种语法时:

<a href="{{ LIBRARY_URL }}" referrerpolicy="origin">
library = (
        Site.find_for_request(request)
        .root_page.get_children()
        .type(LibraryPage)
        .first()
    )

return {
        "LIBRARY_URL": library.get_full_url(),
        }
    

使用最后一种语法没有服务器错误,但是当我在网站上时它会重定向到 https

有没有办法修复 get_full_url 以仅重定向到 HTTPs 链接?感谢您的时间

标签: pythondjangohttphttpswagtail

解决方案


在管理员中,在设置 -> 站点下,将站点的端口号设置为 443。


推荐阅读