python - 带有 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 链接?感谢您的时间
解决方案
在管理员中,在设置 -> 站点下,将站点的端口号设置为 443。
推荐阅读
- html - 如何在 html 中标注不带 id 的标签?
- python - 在列表中,如果一组连续的项目满足给定条件,则将它们替换为包含这些项目的子列表
- sonarqube - 无法实现单模块设计中所有模块的声纳覆盖报告需要配置
- c++ - 尽管代码完全没问题,但显示 Abort 调用的代码
- java - RecyclerView 中的重复联系人
- reporting-services - SSRS 表达式求和值 IIF YearMonth = 参数
- c# - Unity 拖放 x 和 z 位置
- javascript - 根据用户权限允许访问 Firebase Firestore
- c# - 单击仪表板中的菜单时 C# 表单提示密码
- assembly - 整数溢出 irvine32